面码份量Java_JAVA语言(28道练习题)
【練習(xí)題】01.類的成員變量 猜數(shù)字游戲一個(gè)類A有一個(gè)成員變量v有一個(gè)初值100。定義一個(gè)類對(duì)A類的成員變量v進(jìn)行猜。如果大了則提示大了小了則提示小了。等于則提示猜測(cè)成功。import java.util.;
public class lianxi
{
public static void main(String[] dsa)
{
A a=new A();
Scanner input=new Scanner(System.in);
while (1==1)
{
System.out.println(“請(qǐng)猜測(cè)數(shù)字”);
int i=input.nextInt();
if (i
{
System.out.println(“小了”);
continue;
}
else if (i>a.v)
{
System.out.println(“大了”);
continue;
}
else
{
System.out.println(“恭喜你猜對(duì)了!”);
break;
}
}
}
}
class A
{
public int v=100;
}
【練習(xí)題】02.類的成員變量 請(qǐng)定義一個(gè)交通工具(Vehicle)的類其中有: 屬性速度(speed)體積(size)等等 方法移動(dòng)(move())設(shè)置速度(setSpeed(int speed))加速speedUp(),減速speedDown()等等. 最后在測(cè)試類Vehicle中的main()中實(shí)例化一個(gè)交通工具對(duì)象并通過(guò)方法給它初始化speed,size的值并且通過(guò)打印出來(lái)。另外調(diào)用加速減速的方法對(duì)速度進(jìn)行改變。public class Vehicle
{
private int speed;
private String size;
public void move()
{
System.out.println(“i’m moving”);
}
public void setSpeed(int speed)
{
System.out.println(“now i’m running with”+speed+“per hour”);
}
public void speedUp()
{
Vehicle v=new Vehicle();
v.setSpeed(1000);
}
public void speedDown()
{
Vehicle v=new Vehicle();
v.setSpeed(20);
}
public static void main(String[] dsa)
{
Vehicle v=new Vehicle();
v.speed=100;
v.size=“50/m^3”;
System.out.println(“the initial speed is”+v.speed+“and my size is “+v.size);
v.speedUp();
v.speedDown();
}
}
【練習(xí)題】03.類的成員變量與方法、構(gòu)造方法 在程序中經(jīng)常要對(duì)時(shí)間進(jìn)行操作但是并沒(méi)有時(shí)間類型的數(shù)據(jù)。那么我們可以自己實(shí)現(xiàn)一個(gè)時(shí)間類來(lái)滿足程序中的需要。 定義名為MyTime的類其中應(yīng)有三個(gè)整型成員時(shí)hour分minute秒second為了保證數(shù)據(jù)的安全性這三個(gè)成員變量應(yīng)聲明為私有。 為MyTime類定義構(gòu)造方法以方便創(chuàng)建對(duì)象時(shí)初始化成員變量。 再定義diaplay方法用于將時(shí)間信息打印出來(lái)。 為MyTime類添加以下方法 addSecond(int sec) addMinute(int min) addHour(int hou) subSecond(int sec) subMinute(int min) subHour(int hou) 分別對(duì)時(shí)、分、秒進(jìn)行加減運(yùn)算。public class MyTime
{
private int hour;
private int minute;
private int second;
public MyTime(int x,int y,int z)
{
this.hour=x;
this.minute=y;
this.second=z;
}
public void display()
{
System.out.println(“the time is “+this.hour+”:”+this.minute+”:”+this.second);
}
public void addHour(int hou)
{
this.hour=this.hour+hou;
}
public void addSecond(int sec)
{
this.second=this.second+sec;
}
public void addMinute(int min)
{
this.minute=this.minute+min;
}
public void subHour(int hou)
{
this.hour=this.hour-hou;
}
public void subMinute(int min)
{
this.minute=this.minute-min;
}
public void subSecond(int sec)
{
this.second=this.second-sec;
}
}
【練習(xí)題】04.構(gòu)造方法 編寫Java程序模擬簡(jiǎn)單的計(jì)算器。 定義名為Number的類其中有兩個(gè)整型數(shù)據(jù)成員n1和n2應(yīng)聲明為私有。編寫構(gòu)造方法賦予n1和n2初始值再為該類定義加addition、減subtration、乘multiplication、除division等公有成員方法分別對(duì)兩個(gè)成員變量執(zhí)行加、減、乘、除的運(yùn)算。 在main方法中創(chuàng)建Number類的對(duì)象調(diào)用各個(gè)方法并顯示計(jì)算結(jié)果。public class Number
{
private int x;
private int y;
public Number(int x,int y)
{
this.x=x;
this.y=y;
}
public void plus()
{
System.out.println(“the result is:”+(this.x+this.y));
}
public void except()
{
System.out.println(“the result is :”+(this.x-this.y));
}
public void multiplication()
{
System.out.println(“the result is :”+(this.xthis.y));
}
public void division()
{
System.out.println(“the result is :”+(this.x/this.y));
}
public static void main(String[] dsa)
{
Number lian=new Number(4,4);
lian.plus();
lian.except();
lian.multiplication();
lian.division();
}
}
【練習(xí)題】05.構(gòu)造方法 編寫Java程序用于顯示人的姓名和年齡。 定義一個(gè)人類Person該類中應(yīng)該有兩個(gè)私有屬性姓名name和年齡age。定義構(gòu)造方法用來(lái)初始化數(shù)據(jù)成員。再定義顯示display方法將姓名和年齡打印出來(lái)。 在main方法中創(chuàng)建人類的實(shí)例然后將信息顯示。public class lianxi
{
private String name;
private int age;
public lianxi(String name,int age)
{
this.name=name;
this.age=age;
}
public void display()
{
System.out.println(“name:”+name+"\tage:"+age);
}
public static void main(String[] dsa)
{
lianxi lian=new lianxi(“wing”,29);
lian.display();
}
}
【練習(xí)題】06.get方法和set方法 定義一個(gè)類該類有一個(gè)私有成員變量通過(guò)構(gòu)造方法將其進(jìn)行賦初值并提供該成員的getXXX()和setXXX()方法 提示假設(shè)有private String name;則有public void setName(String name){?this.name?= name; } public String getName(){ return?this.name; }
public class lianxi
{
private int i;
public lianxi(int i)
{
lianxi lian=new lianxi();
lian.seti(i);
lian.geti();
System.out.println(“i=”+i);
}
public lianxi()
{}
public int geti()
{
return i;
}
public void seti(int i)
{
this.i=i;
}
public static void main(String[] dsa)
{
lianxi lian=new lianxi(3);
}
}
【練習(xí)題】07.構(gòu)造方法與重載 為“無(wú)名的粉”寫一個(gè)類class WuMingFen 要求: 1.有三個(gè)屬性 面碼:String theMa 粉的分量(兩) int quantity 是否帶湯 boolean likeSoup 2.寫一個(gè)構(gòu)造方法 以便于簡(jiǎn)化初始化過(guò)程 如 WuMingFen f1 = new WuMingFen(“牛肉”,3,true); 3.重載構(gòu)造方法 使得初始化過(guò)程可以多樣化 WuMingFen f2 = new WuMingFen(“牛肉”,2); 4.如何使得下列語(yǔ)句構(gòu)造出來(lái)的粉對(duì)象是酸辣面碼、2兩、帶湯的 WuMingFen f3 = new WuMingFen(); 5.寫一個(gè)普通方法 check() 用于查看粉是否符合要求。即 將對(duì)象的三個(gè)屬性打印在控制臺(tái)上。public class WuMingFen
{
private String theMa;
private int quantity;
private boolean likeSoup;
public WuMingFen (String s,int i,boolean b)
{
this.theMa=s;
this.quantity=i;
this.likeSoup=b;
}
public WuMingFen (String s,int i)
{
this.theMa=s;
this.quantity=i;
}
public WuMingFen (String s,boolean b,int i)
{
this.theMa=s;
this.quantity=i;
this.likeSoup=b;
if (btrue)
{
String b1=“帶湯的”;
System.out.println(theMa+quantity+“兩”+b1);
}
}
public void check()
{
if (likeSouptrue)
{
String b1=“帶湯的”;
System.out.println(“面碼:”+theMa+"\n分量"+quantity+"\n"+b1);
}
else
{
String b1=“不帶湯的”;
System.out.println(“面碼:”+theMa+"\n分量"+quantity+"\n"+b1);
}
}
public static void main(String[] args)
{
WuMingFen lian=new WuMingFen (“沙茶面”,2,true);
lian.check();
}
}
【練習(xí)題】08.構(gòu)造方法的重載 定義一個(gè)名為Vehicles 交通工具 的基類 該類中應(yīng)包含String類型的成員屬性brand 商標(biāo) 和color 顏色 還應(yīng)包含成員方法run 行駛 在控制臺(tái)顯示“我已經(jīng)開(kāi)動(dòng)了” 和showInfo 顯示信息 在控制臺(tái)顯示商標(biāo)和顏色 并編寫構(gòu)造方法初始化其成員屬性。 編寫Car 小汽車 類繼承于Vehicles類 增加int型成員屬性seats 座位 還應(yīng)增加成員方法showCar 在控制臺(tái)顯示小汽車的信息 并編寫構(gòu)造方法。 編寫Truck 卡車 類繼承于Vehicles類 增加float型成員屬性load 載重 還應(yīng)增加成員方法showTruck 在控制臺(tái)顯示卡車的信息 并編寫構(gòu)造方法。 在main方法中測(cè)試以上各類。public class Vehicles
{
public String brand;
public String color;
public void run()
{
System.out.println(“i am running”);
}
public Vehicles(String b, String b1)
{
this.brand=b;
this.color=b1;
}
public void showInfo()
{
System.out.println(“brand:”+this.brand+"\tcolor:"+this.color);
}
public static void main(String[] dad)
{
Vehicles lian=new Vehicles (“Lamborgihini”,“yellow”);
lian.showInfo();
car c=new car(“Aventador”,“green”,6);
c.showCar();
Truck t=new Truck(“Dongfangxuetielong”,“Bule”,12);
t.showTruck();
}
}
class car extends Vehicles
{
public int seat;
public void showCar()
{
System.out.println(“i am a “+this.brand+“my color is “+this.color+“i have “+this.seat+“seats~”);
}
public car(String b, String b1,int s)
{
super(b,b1);
this.seat=s;
}
}
class Truck extends Vehicles
{
public float load;
public void showTruck()
{
System.out.println(“i am a “+this.brand+“my color is “+this.color+“i can stand “+this.load+“tons of materials”);
}
public Truck(String b, String b1,float f)
{
super(b,b1);
this.load=f;
}
}
【練習(xí)題】09.構(gòu)造方法與重載 定義一個(gè)網(wǎng)絡(luò)用戶類 要處理的信息有用戶ID、用戶密碼、email地址。在建立類的實(shí)例時(shí) 把以上三個(gè)信息都作為構(gòu)造函數(shù)的參數(shù)輸入 其中用戶ID和用戶密碼時(shí)必須的 缺省的email地址是用戶ID加上字符串”@gameschool.com"public class UerInfo
{
private int id;
private String pwd;
private String e_add;
public UerInfo(int i,String s,String s1)
{
this.id=i;
this.pwd=s;
this.e_add=s1;
System.out.println(id+”\n”+pwd+”\n”+e_add);
}
public UerInfo(int i,String s)
{
this.id=i;
this.pwd=s;
this.e_add=id+"@gameschool.com”;
System.out.println(id+”\n”+pwd+”\n”+e_add);
}
public static void main(String[] dsa)
{
UerInfo uer=new UerInfo(1201012204,“dwajldwajlj”,"1111111111@gameschool.com”);
UerInfo u=new UerInfo(1201012204,“dwijadiwjal”);
}
}
【練習(xí)題】10.構(gòu)造方法與重載、包 編寫Addition類 該類中應(yīng)包含一組實(shí)現(xiàn)兩數(shù)相加運(yùn)算的重載方法。 實(shí)現(xiàn)加法運(yùn)算的方法 應(yīng)接受兩個(gè)參數(shù) 即加數(shù)和被加數(shù) 方法將兩個(gè)參數(shù)進(jìn)行加法運(yùn)算后 返回相加結(jié)果。考慮可能針對(duì)不同的數(shù)據(jù)類型進(jìn)行計(jì)算 重載一組方法 包括整型、長(zhǎng)整型、浮點(diǎn)型、雙精度浮點(diǎn)型、還有字符串。 在main方法中創(chuàng)建Addition類的實(shí)例 分別調(diào)用重載方法測(cè)試其效果。 應(yīng)將Addition類打入到包中 以自己名字的拼音為包命名。package cj.lian;
public class lianxi
{
public void additionInt(int x,int y)
{
int sum=x+y;
System.out.println(“sum=”+sum);
}
public void additionLong(long x,long y)
{
long sum=x+y;
System.out.println(“sum=”+sum);
}
public void additionFloat(float x,float y)
{
float sum=x+y;
System.out.println(“sum=”+sum);
}
public void additionDouble(double x,double y)
{
double sum=x+y;
System.out.println(“sum=”+sum);
}
public void additionString(String x,String y)
{
String sum=x+y;
System.out.println(“sum=”+sum);
}
public static void main(String[] dsa)
{
lianxi lian=new lianxi();
lian.additionInt(1,2);
lian.additionString(“1”,“2”);
}
}
【練習(xí)題】11.構(gòu)造方法與重載 將上次練習(xí)題三中編寫的MyTime類打到以自己名字的拼音命名的包中 并為該類重載一組構(gòu)造方法 以方便使用者能夠以多種形式初始化該類的實(shí)例。package java.time;
public class MyTime
{
private int hour;
private int minute;
private int second;
public MyTime(int x,int y,int z)
{
this.hour=x;
this.minute=y;
this.second=z;
}
public MyTime()
{}
public void display()
{
System.out.println(“the time is “+this.hour+”:”+this.minute+”:"+this.second);
}
public void addHour(int hou)
{
this.hour=this.hour+hou;
}
public void addSecond(int sec)
{
this.second=this.second+sec;
}
public void addMinute(int min)
{
this.minute=this.minute+min;
}
public void subHour(int hou)
{
this.hour=this.hour-hou;
}
public void subMinute(int min)
{
this.minute=this.minute-min;
}
public void subSecond(int sec)
{
this.second=this.second-sec;
}
public static void main(String[] das)
{
MyTime t=new MyTime();
t.display();
}
}
編譯包: javac -d . MyTime.java【練習(xí)題】12.構(gòu)造方法與重載 建立一個(gè)汽車類 包括輪胎個(gè)數(shù) 汽車顏色 車身重量等屬性。并通過(guò)不同的構(gòu)造方法創(chuàng)建事例。 至少要求 汽車能夠加速 減速 停車。 要求 命名規(guī)范 代碼體現(xiàn)層次 有友好的操作提示。public class car
{
private int lunzi;
private String color;
private double weight;
public car(){}
public car(int i,String s,double d)
{
this.lunzi=i;
this.color=s;
this.weight=d;
}
public void SpeedUp()
{
System.out.println(“i am speeding up~”);
}
public void SpeedDown()
{
System.out.println(“i am speeding down~”);
}
public void Stop()
{
System.out.println(“i have stopped”);
}
public static void main(String[] das)
{
car c=new car();
car c1=new car(4,“yellow”,1.45);
c.SpeedUp();
c.SpeedDown();
c.Stop();
}
}
【練習(xí)題】13.構(gòu)造方法與重載 創(chuàng)建一個(gè)類 為該類定義三個(gè)構(gòu)造函數(shù) 分別執(zhí)行下列操作 1、傳遞兩個(gè)整數(shù)值并找出其中較大的一個(gè)值 2、傳遞三個(gè)double值并求出其乘積 3、傳遞兩個(gè)字符串值并檢查其是否相同 4、在main方法中測(cè)試構(gòu)造函數(shù)的調(diào)用public class lianxi
{
public lianxi(int x,int y)
{
if (x>y)
{
System.out.println("The max is "+x);
}
else
System.out.println("The max is "+y);
}
public lianxi(double d1,double d2,double d3)
{
double ji=d1d2d3;
System.out.println("The multiply result is "+ji);
}
public lianxi(String s1,String s2)
{
boolean b;
if (s1.equals(s2))
{
b=true;
System.out.println(b);
}
else
{
b=false;
System.out.println(b);
}
}
public static void main(String[] dasd)
{
lianxi c=new lianxi(1,2);
lianxi c1=new lianxi(1,2,3);
lianxi c2=new lianxi(“nihao”,“nihao”);
}
}
【練習(xí)題】14.Static關(guān)鍵字與普通變量的區(qū)別 創(chuàng)建一個(gè)名稱為StaticDemo的類 并聲明一個(gè)靜態(tài)變量和一個(gè)普通變量。對(duì)變量分別賦予10和5的初始值。在main()方法中輸出變量值。public class StaticDemo
{
private static int i=10;
private int y=5;
public static void main(String[] das)
{
StaticDemo s=new StaticDemo();
System.out.println("The static digit is “+car.i+”\n and the normal digit is "+s.y);
}
}
【練習(xí)題】15.繼承 創(chuàng)建一個(gè)名稱為MainPackage的包 使它包含MainClass和MainSubClass類。MainClass類應(yīng)當(dāng)包含變量聲明 其值從構(gòu)造函數(shù)中輸出。MainSubClass類從MainClass派生而來(lái)。試執(zhí)行下列操作 創(chuàng)建一個(gè)名稱為SamePackage的類 使它導(dǎo)入上述包 并創(chuàng)建一個(gè)MainSubClass類的對(duì)象。創(chuàng)建MainClass包–package MainPackage.Main;
public class MainClass
{
public int i=10;
public MainClass()
{
System.out.println(i);
}
}
創(chuàng)建MainSubClass包–package MainPackage.Main;
public class MainSubClass extends MainClass
{
public MainSubClass (){}
}
創(chuàng)建SamePackage類—import MainPackage.Main.MainSubClass;
public class SamePackage
{
public static void main(String[] da)
{
MainSubClass m=new MainSubClass();
}
}
【練習(xí)題】16.包、繼承、構(gòu)造函數(shù) 創(chuàng)建一個(gè)名稱為MainPackage的包 使它包含MainClass和MainSubClass類。MainClass類應(yīng)當(dāng)包含變量聲明 其值從構(gòu)造方法中輸出。MainSubClass類從MainClass派生而來(lái)。試執(zhí)行下列操作 創(chuàng)建一個(gè)名稱為SamePackage的類 使它導(dǎo)入上述包 并創(chuàng)建一個(gè)MainSubClass類的對(duì)象。創(chuàng)建MainClass包–package MainPackage.Main;
public class MainClass
{
public int i=10;
public MainClass()
{
System.out.println(i);
}
}
創(chuàng)建MainSubClass包–package MainPackage.Main;
public class MainSubClass extends MainClass
{
public MainSubClass (){}
}
創(chuàng)建SamePackage類—import MainPackage.Main.MainSubClass;
public class SamePackage
{
public static void main(String[] da)
{
MainSubClass m=new MainSubClass();
}
}
【練習(xí)題】17.繼承 創(chuàng)建一個(gè)父類和子類 父類有一個(gè)數(shù)據(jù)成員 子類繼承父類的該數(shù)據(jù)成員 通過(guò)構(gòu)造函數(shù)初始化并顯示該數(shù)據(jù)成員的值。 class Father
{
public int i=10;
}
class Son extends Father
{
public lianxi()
{
System.out.println(i);
}
public static void main(String[] dsa)
{
Son s=new Son ();
}
}
【練習(xí)題】18.覆蓋、繼承 建立一個(gè)汽車Auto類 包括輪胎個(gè)數(shù) 汽車顏色 車身重量、速度等成員變量。并通過(guò)不同的構(gòu)造方法創(chuàng)建實(shí)例。至少要求 汽車能夠加速 減速 停車。 再定義一個(gè)小汽車類Car 繼承Auto 并添加空調(diào)、CD等成員變量 覆蓋加速 減速的方法public class Auto
{
public int luntai;
public String color;
public double weight;
public int speed;
public Auto(){}
public void jiasu()
{
System.out.println(“wo zai jiasu”);
}
public void jiansu()
{
System.out.println(“wo zai jiansu”);
}
public void tingzhi()
{
System.out.println("wo bu kai le ");
}
public static void main(String[] dsa)
{
car c=new car();
c.jiasu();
c.jiansu();
}
}
class car extends Auto
{
public String air_condition;
public String cd;
public void jiasu()
{
System.out.println(“wo shi jiaoche, wo zai jiasu”);
}
public void jiansu()
{
System.out.println(“wo shi jianche,wo zai jiansu”);
}
}
【練習(xí)題】19.抽象類與繼承 設(shè)計(jì)一個(gè)能細(xì)分為矩形、三角形、圓形和橢圓形的“圖形”類。使用繼承將這些圖形分類 找出能作為基類部分的共同特征(如校準(zhǔn)點(diǎn))和方法(如畫(huà)法、初始化) 并看看這些圖形是否能進(jìn)一步劃分為子類。 本題只考慮實(shí)現(xiàn)思想 不考慮具體實(shí)現(xiàn)的細(xì)節(jié) 實(shí)現(xiàn)方式可自由發(fā)揮。
```java
abstract class tuxing
{
public tuxing()
{
System.out.println("i am tuxing");
}
public static void main(String[] dsa)
{
juxing j=new juxing();
circle c=new circle();
tuoyuan t=new tuoyuan();
}
}
class juxing extends tuxing
{
public juxing()
{
System.out.println(" i am juxing");
}
}
class circle extends tuxing
{
public circle()
{
System.out.println("i am circle");
}
}
class tuoyuan extends circle
{
public tuoyuan()
{
System.out.println("i am tuoyuan");
}
}
【練習(xí)題】20.抽象類 創(chuàng)建一個(gè)Vehicle類并將它聲明為抽象類。在Vehicle類中聲明一個(gè)NoOfWheels方法 使它返回一個(gè)字符串值。創(chuàng)建兩個(gè)類Car和Motorbike從Vehicle類繼承 并在這兩個(gè)類中實(shí)現(xiàn)NoOfWheels方法。在Car類中 應(yīng)當(dāng)顯示“四輪車”信息 而在Motorbike類中 應(yīng)當(dāng)顯示“雙輪車”信息。創(chuàng)建另一個(gè)帶main方法的類 在該類中創(chuàng)建Car和Motorbike的實(shí)例 并在控制臺(tái)中顯示消息。public class lianxi
{
public static void main(String[] dsa)
{
Car c=new Car();
c.NoOfWheels();
Motorbike m=new Motorbike();
m.NoOfWheels();
}
}
abstract class Vehicle
{
public void NoOfWheels(){}
}
class Car extends Vehicle
{
public void NoOfWheels()
{
System.out.println("四輪車");
}
}
class Motorbike extends Vehicle
{
public void NoOfWheels()
{
System.out.println("雙輪車");
}
}
【練習(xí)題】21.抽象類 創(chuàng)建一個(gè)Vehicle類并將它聲明為抽象類。在Vehicle類中聲明一個(gè)NoOfWheels方法 使它返回一個(gè)字符串值。創(chuàng)建兩個(gè)類Car和Motorbike從Vehicle類繼承 并在這兩個(gè)類中實(shí)現(xiàn)NoOfWheels方法。在Car類中 應(yīng)當(dāng)顯示“四輪車”信息 而在Motorbike類中 應(yīng)當(dāng)顯示“雙輪車”信息。創(chuàng)建另一個(gè)帶main方法的類 在該類中創(chuàng)建Car和Motorbike的實(shí)例 并在控制臺(tái)中顯示消息。public class lianxi
{
public static void main(String[] dsa)
{
Car c=new Car();
c.NoOfWheels();
Motorbike m=new Motorbike();
m.NoOfWheels();
}
}
abstract class Vehicle
{
public void NoOfWheels(
總結(jié)
以上是生活随笔為你收集整理的面码份量Java_JAVA语言(28道练习题)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: P5726 【深基4.习9】打分(pyt
- 下一篇: java遍历子目录_Java遍历文件夹及