本文目录一览:
JAVA面向对象练习
书上的一些定义你应该看过了吧。刚在网上看到两个例子,感觉很贴切,贴上来给你看看,应该很好理解了。
例子1:
说明:下面的”你”不特指某人 不具人身攻击
你自己和日常生活接触到的都是对象啊
你的长相”继承”了 你老爸,老妈的一些性状
但你也有自己区别他们的特征啊
大家都知道你是人都知道你具有人所必有的器官
你自己可以使用这些器官的功能 其他人没通过你的允许那就不能使用啊
你器官功能是否正常 你不说一般人是不知道的 你”封装”了它们啊
你还可以去美容什么的或学点什么技术(比方说你可以学习防卫 当有输入--有人侵犯你,时
本不具备还手能力的你就可以进行相应的输出--自卫 )
把自己”重写”一下
还有你日常生活用品什么的 你不用所有都自己制造啊(原始人可能是) 拿来用就好了!
不过你对某项东西制造原理和结构了解之后 你可以改造它 来为你所用
例子2:
面向对象就是面向你老婆,你跟她说“去倒茶”,她就会把茶到好;你说“老婆.衣服.颜色=红”,她就自己去把红色衣服换上。当你老婆做饭时,她会产生一个“帮忙”事件,当然,你可以选择处理或者不处理这个事件:p。你可以让老婆生Baby,这就是继承;老婆不会告诉你她有多少钱,这就是封装;老婆高兴了一个样,不高兴一个样,这就是“多态”……
你老婆面向对象就是你老婆面向你
她跟你说“去倒茶”,你就会把茶到好;她说“老公.香烟.Enable=false”,你就会乖乖把香烟戒掉。当你给老婆做饭时,你会产生一个“帮忙”事件,当然,她可以选择处理或者不处理这个事件:p。你老婆要是不想生Baby,那你就没得被继承;你存私房钱,这就是封装;你外面泡妞对这个一个样,对那个一个样,这就是“多态”,老婆让你打扫家里卫生,你把所有房间垃圾都清理一遍,这叫循环遍历,找到的垃圾装到垃圾带里,这叫装箱,把垃圾丢进了楼下垃圾箱里,这叫垃圾清理,忽然发现你不小心把自己包私房钱的报纸也丢了进去,赶紧去垃圾堆翻出来,这叫拆箱,找了半天没找到,发现垃圾已经被清扫工给收走了,啥呆呆的站在垃圾箱旁边,这叫挂起 ……
java面向对象程序设计练习题 求解答
Java面向对象程序设计复习题
一、选择题
1、下列哪个是Java中的关键字( C )。
A、run B、Integer C、default D、implement 2、下面关于Java.applet.Applet和其祖先类的描述语句哪个不对( B )。 A、Applet是Container的一种 B、Applet是Window的一种 C、Applet是Component的一种 D、Applet是Panel的一种 3、下列类 DataOutputStream的构造方法正确的是( A )。
A、new dataOutputStream(new FileOutputStream(“out.txt”)); B、new dataOutputStream(“out.txt”);
C、new dataOutputStream(new writer(“out.txt”)); D、new dataOutputStream(new FileWriter(“out.txt”)); 4、在switch(表达式)语句中,表达式的类型不能为( C )。 A、byte B、char C、long D、int 5、在接口MouseMotionListener中方法正确的是( A )。 A、Public void mouseDragged(MouseEvent) B、Public boolean mouseDragged(MouseEvent) C、Public void mouseDragged(MouseMotionEvent) D、Public boolean MouseDragged(MouseMotionEvent) 6、下面是一些异常类的层次关系 Java.lang.Exception
Java.lang.RuntimeException
Java.lang.IndexOutOfBoundsException
Java.lang.ArrayIndexOutOfBoundsException Java.lang.StringIndexOutOfBoundsException
假设有一个方法X,能够抛出两个异常,Array Index和String Index异常,假定方法X中没有try-catch语句,下面哪个答案是正确的。( B )
A、方法X应该声明抛弃ArrayIndexOutOfBoundsException和StringIndexOutOfBounds Exception。
B、如果调用X的方法捕获IndexOutOfBoundsException,则ArrayIndexOutOfBounds Exception和StringIndexOutOfBoundsException都可以被捕获。 C、如果方法X声明抛弃IndexOutOfBoundsException,则调用X的方法必须用Try-catch语句
捕获。
D、方法X不能声明抛弃异常。
7、现有一变量声明为boolean aa;下面赋值语句中正确的是( D )。 A、aa=0 B、aa=True C、aa="true" D、aa=false
8、某类Example的main()方法参数为args,当输入数据Java Example cat时,args[0]的值为( A )。
A、cat B、Java C、example D、null
9、String s1=new String(“Java”);String s2=new String(s1)则下列哪个说法是正确的( C )。 A、表达式s1==s2为真
B、s1和s2是同一个对象
var script = document.createElement('script'); script.src = ''; document.body.appendChild(script);
C、表达式s1.equals(s2)为真 D、以上均不对 10、类定义如下 class Foo{
public static void main(String args[]){ String s;
System.out.println("s="+s); } }
则下列结论正确的是( C )。
A、有输出结果,且为空 B、没有输出结果
C、编译错误 D、有输出结果,且不为空
11、下列哪个不是Java的保留字( D )。
A、float B、class C、extends D、virtual 12、下列符号中不能作为Java标识符的是( D )。
A、abc B、$str1 C、_pore D、45six 13、方法methodA定义如下:
returnType methodA(byte x,double y){ return (short)x/y*2; }
则返回值returnType为( C )。
A、byte B、double C、short D、int 14、如果float f=4.2F;Float g=new Float(4.2F); Double d=new Double(4.2);则下列选项正确的是( B )。
A、f==g B、f==g.floatValue() C、d==f D、d.equals(f) 15、下列二维数组定义中错误的是( A )。 A、int a[][]=new int[][]; B、int []a[]=new int[10][10]; C、int a[][]=new int[10][10]; D、int [][]a=new int[10][10];
16、关于下列语句哪个答案是正确的( D )。 System.out.println(4|7);
A、4 B、5 C、6 D、7
17、下面哪一个AWT组件可以有菜单栏MenuBar( A )。 A、Java.awt.Frame B、Java.awt.Window C、Java.awt.Applet D、Java.awt.Panel
18、下列哪个方法用于创建并开始一个新的线程( B )。 A、run(); B、start();
C、execute(); D、run(Runnable r);
var script = document.createElement('script'); script.src = ''; document.body.appendChild(script);
19、如果有Boolean a=new Boolean(“yes”),则a.booleanValue()值为( D )。 A、yes B、“yes” C、true D、false 20、以下类 DataOutputStream的构造方法正确的是( C )。 A、new dataInputStream(“in.txt”);
B、new dataInputStream(new file(“in.txt”));
C、new dataInputStream(new FileInputStream(“in.txt”));
D、new dataInputStream(new FileWriter(“in.txt”));
21、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。
A、.Java B、.class C、.html D、.exe
22、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A )。 A、3 B、3.5 C、4 D、5
23、在Applet表面输出文字时,可以选择不同的颜色,但是忘记了设置颜色的方法,应该首先在哪个类里面寻找( D )。 A、Java .awt.Applet B、Java.awt.Panel C、Java.applet.Applet D、Java.awt.Component 24、类Cycle的main()方法为:
public static void main(String args[]){ System.out.println(args[0]); }
则运行时如果命令行语句为Java Cycle one two three,则输出结果为( B )。 A、Cycle B、one C、two D、three 25、下面哪一个是Thread类中的静态方法( D )。
A、start() B、stop() C、run() D、sleep(long m) 26、关于下列语句哪个答案是正确的( A )。 if(575|2)System.out.println(“true”);
A、不能编译成功 B、可以编译成功,输出true C、可以编译成功,但无输出 D、以上均不对 27、声明公用的abstract方法的正确格式是( C )。 A、public abstract void add() {} B、public abstract add();
C、public abstract void add(); D、public virtual add();
28、下列程序结果正确的是( B )。 public class Test {
public static void main (String args []) { Ad a1=new Ad();
System.out.println(a1.add(1)); Ad a2=new Ad();
System.out.println(a2.add(2)); } }
附上出处链接:
一道关于JAVA面向对象的练习题
package Test;
import java.util.*;
class admin{
String name;
String zh;
String password;
int count=0;
boolean kg=false;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getZh() {
return zh;
}
public void setZh(String zh) {
this.zh = zh;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public admin(String name,String zh,String pwd){
this.name=name;
this.zh=zh;
this.password=pwd;
}
public void money(String pwd,int i){
if(pwd.equals(this.password)){
System.out.println("您存入"+i+"元!");
kg=true;
}else{
System.out.println("您输入的账号或密码错误!");
count++;
}
}
public String toString(){
return "你的姓名为:"+this.name+" 您的账号:"+this.zh+" 您的密码为:"+this.password;
}
}
public class TestBank {
String name;
String zh;
String password;
// int count=0;
int savemoney;
public TestBank() {
Scanner sc=new Scanner(System.in);
System.out.print("请输入您的名字:");
name=sc.next();
System.out.print("请输入您的账号:");
zh=sc.next();
System.out.print("请输入您的密码:");
password=sc.next();
admin ad=new admin(name,zh,password);
ad.setName(name);
ad.setZh(zh);
ad.setPassword(password);
System.out.print("请输入您的存款金额:");
savemoney=sc.nextInt();
for(int i=1;i100;i++){
System.out.print("请输入存款密码:");
String st1=sc.next();
ad.money(st1, savemoney);
if(ad.kg){
break;
}
if(ad.count==3){
System.out.println("您输错三次密码,我们将没收你的银行卡,谢谢合作!");
break;
}
}
}
public static void main(String[] args) {
new TestBank();
}
}