当前位置:文档之家› Java面向对象编程练习题

Java面向对象编程练习题

Java面向对象编程练习题
Java面向对象编程练习题

【练习题】01.类的成员变量:

猜数字游戏:一个类A有一个成员变量v,有一个初值100。定义一个类,对A 类的成员变量v进行猜。如果大了则提示大了,小了则提示小了。等于则提示猜测成功。

import java.util.*;

class A{

int v = 100;

A(){

this.v = v;

}

}

public class b01

{

public static void main(String args[]){

A a = new A();

Scanner intput = new Scanner(System.in);

int intputvalue = intput.nextlnt();

if(intputvalue>a.v)

System.out.println("你的输入大于这个值");

if(intputvalue

System.out.println("你的输入小于这个值");

if(intputvalue==a.v)

System.out.println("猜测成功");

}

}

【练习题】02.类的成员变量:

请定义一个交通工具(Vehicle)的类,其中有:

属性:速度(speed),体积(size)等等

方法:移动(move()),设置速度(setSpeed(int speed)),加速speedUp(),减速speedDown()等等.

最后在测试类Vehicle中的main()中实例化一个交通工具对象,并通过方法给它初始化speed,size的值,并且通过打印出来。另外,调用加速,减速的方法对速度进行改变。

class Vehicle

{int speed;

int size;

void move(){

};

void setSpeed(int speed){

this.speed = speed;

}

void speedUp(){

speed = speed+1;

this.speed=speed;

}

void speedDown(){

speed = speed-1;

this.speed=speed;

}

}

public class b01

{ public static void main(String args[]){

Vehicle a = new Vehicle();

a.setSpeed(55);

a.size = 80;

a.speedUp();

System.out.println("Speed:"+a.speed+"\nsize:"+a.size);

}

}

【练习题】03.类的成员变量与方法、构造方法

在程序中,经常要对时间进行操作,但是并没有时间类型的数据。那么,我们可以自己实现一个时间类,来满足程序中的需要。

定义名为MyTime的类,其中应有三个整型成员:时(hour),分(minute),秒(second),为了保证数据的安全性,这三个成员变量应声明为私有。

为MyTime类定义构造方法,以方便创建对象时初始化成员变量。

再定义diaplay方法,用于将时间信息打印出来。

为MyTime类添加以下方法:

addSecond(int sec)

addMinute(int min)

addHour(int hou)

subSecond(int sec)

subMinute(int min)

subHour(int hou)

分别对时、分、秒进行加减运算。

class MyTime

{

private int hour;

private int minute;

private int second;

public MyTime(int hour,int minute,int second){

this.hour = hour;

this.minute = minute;

this.second = second;

}

void diaplay(){

System.out.println("时间:"+hour+":"+minute+":"+second

);

}

void addSecond(int sec){

second = second+sec;

}

void addMinute(int min){

minute = minute+min;

}

void addHour(int hou){

hour = hour+hou;

}

void subSecond(int sec){

second = second-sec;

}

void subMinute(int min){

minute = minute-min;

}

void subHour(int hou){

hour = hour-hou;

}

void Test(){

if(hour<=23&hour>=0&minute<=59&minute>=0&second<=59&second>=0) System.out.println("\nTrue\n");

else

System.out.println("\nFalse\n");

}

}

public class b01

{

public static void main(String args[]){

MyTime b = new MyTime(11,4,55);

b.subHour(5);

b.subMinute(5);

b.subSecond(2);

b.diaplay();

b.Test();

}

}

【练习题】04.构造方法

编写Java程序,模拟简单的计算器。

定义名为Number的类,其中有两个整型数据成员n1和n2,应声明为私有。编写构造方法,赋予n1和n2初始值,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等公有成员方法,分别对两个成员变量

执行加、减、乘、除的运算。

在main方法中创建Number类的对象,调用各个方法,并显示计算结果。

class Number

{

private int n1;

private int n2;

public Number(int n1,int n2){

this.n1 = n1;

this.n2 = n2;

}

void addition(){

int equal = n1+n2;

System.out.println("n1+n2="+equal);

}

void subtration(){

int equal = n1-n2;

System.out.println("n1-n2="+equal);

}

void multiplication(){

int equal = n1*n2;

System.out.println("n1*n2="+equal);

}

void division(){

int equal = n1/n2;

System.out.println("n1/n2="+equal);

}

}

public class b01

{

public static void main(String args[]){

Number num = new Number(6,3);

num.division();

}

}

【练习题】05.构造方法:

编写Java程序,用于显示人的和年龄。

定义一个人类(Person),该类中应该有两个私有属性,(name)和年龄(age)。定义构造方法,用来初始化数据成员。再定义显示(display)方法,将和年龄打印出来。

在main方法中创建人类的实例,然后将信息显示。

class Person

{

private String name;

private int age;

public Person(String name,int age){

https://www.doczj.com/doc/ea16976520.html, = name;

this.age = age;

}

void display(){

System.out.println("——>"+name+"\n年龄——>"+age);

}

}

public class b01

{

public static void main(String args[]){

Person per = new Person("奥巴马",20);

per.display();

}

}

【练习题】06.get方法和set方法

定义一个类,该类有一个私有成员变量,通过构造方法将其进行赋初值,并提供该成员的getXXX()和setXXX()方法

提示:假设有private String name;则有

public void setName(String name){

https://www.doczj.com/doc/ea16976520.html, = name;

}

public String getName(){

return https://www.doczj.com/doc/ea16976520.html,;

}

class Person

{

private String name;

public Person (String n){

this.setName(n);

}

public void setName(String n){

name = n ;

}

public String getName(){

return name;

}

public void getInfo(){

System.out.println("名字:"+name);

}

}

public class b01

{

public static void main(String args[]){

Person per = new Person("奥巴马");

per.getName();

per.getInfo();

}

}

【练习题】07.构造方法与重载

为“无名的粉”写一个类:class WuMingFen 要求:

1.有三个属性:面码:String theMa 粉的分量(两):int quantity

是否带汤:boolean likeSoup

2.写一个构造方法,以便于简化初始化过程,如:

WuMingFen f1 = new WuMingFen("牛肉",3,true);

3.重载构造方法,使得初始化过程可以多样化:

WuMingFen f2 = new WuMingFen("牛肉",2);

4.如何使得下列语句构造出来的粉对象是酸辣面码、2两、带汤的?

WuMingFen f3 = new WuMingFen();

5.写一个普通方法:check(),用于查看粉是否符合要求。即:将对象的三个属性打印在控制台上。

class WuMingFen

{

String theMa;

int quantitu;

boolean likeSoup;

public WuMingFen(){

}

public WuMingFen(String theMa,int quantitu){

this.theMa = theMa;

this.quantitu = quantitu;

}

public WuMingFen(String theMa,int quantitu,boolean likeSoup){

this(theMa,quantitu);

this.likeSoup = likeSoup;

}

public void check(){

System.out.println("面码:"+theMa+"\n粉的份量:"+quantitu+"\n 是否带汤:"+likeSoup);

}

}

public class b01

{

public static void main(String args[]){

WuMingFen f1 = new WuMingFen("牛肉",3,true);

WuMingFen f2 = new WuMingFen("牛肉",2);

WuMingFen f3 = new WuMingFen();

f1.check();

f2.check();

f3.check();

}

}

【练习题】08.构造方法的重载:

定义一个名为Vehicles(交通工具)的基类,该类中应包含String类型的成员属性brand(商标)和color(颜色),还应包含成员方法run(行驶,在控制台显示“我已经开动了”)和showInfo(显示信息,在控制台显示商标和颜色),并编写构造方法初始化其成员属性。

编写Car(小汽车)类继承于Vehicles类,增加int型成员属性seats(座位),还应增加成员方法showCar(在控制台显示小汽车的信息),并编写构造方法。编写Truck(卡车)类继承于Vehicles类,增加float型成员属性load(载重),还应增加成员方法showTruck(在控制台显示卡车的信息),并编写构造方法。在main方法中测试以上各类。

class Vehicles

{

private String brand;

private String color;

public Vehicles(String brand,String color){

this.brand = brand;

this.color = color;

}

void run(){

System.out.println("我已经开动了");

}

void showInfo(){

System.out.println("商标:"+brand+"\n颜色:"+color);

}

}

class Car extends Vehicles

{

private int seats;

public Car(String brand,String color,int seats){

super(brand,color);

this.seats = seats;

}

void showCar(){

super.showInfo();

System.out.println("座位:"+seats);

相关主题
文本预览
相关文档 最新文档