本文目錄一覽:
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();
}
}
原創文章,作者:簡單一點,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/129240.html