Java类与对象练习题

您所在的位置:网站首页 java概念题 Java类与对象练习题

Java类与对象练习题

2023-12-28 09:44| 来源: 网络整理| 查看: 265

请定义一个交通工具(Vehicle)的类其中有: 属性: 速度(speed)、 体积(size)等,方法:移动(move())、设置速度(setSpeed(int speed))、加速 speedUp()、减速 speedDown()等。最后在测试类 Vehicle 中的 main()中实例化一个交通工具对象并通过方法给它初始化 speed,size 的值并且通过打印出来。另外调用加速、减速的方法对速度进行改变。 public class Vehicle { private int size; private int speed; public static void main(String[] args) { Vehicle ve = new Vehicle(); ve.setSize(10);//设置初始体积 ve.setSpeed(30);//设置初始速度 ve.move();//调用移动方法 ve.speedUp();//给交通工具减速 ve.speedDown();//加速 } /** 行进 */ public void move(){ System.out.println("行进中......,速度 "+speed+"km/h" ); } /** 设置速度 */ public void setSpeed(int speed){ this.speed = speed; System.out.println("初始速度设置为:"+speed+" km"); } /** 设置体积 */ public void setSize(int size){ this.size = size; System.out.println("初始体积设置为:"+size+" m^3"); } /** 加速20 */ public void speedUp(){ this.speed+=20; System.out.println("速度增加20后为:"+speed+" km"); } /** 减速10 */ public void speedDown(){ this.speed-=10; System.out.println("减速10后为:"+speed+" km"); } } 编写 Java 程序用于显示人的姓名和年龄。定义一个人类Person。 该类中应该有两个私有属性: 姓名 (name) 和年龄 (age) 。定义构造方法用来初始化数据成员。再定义显示(display()) 方法将姓名和年龄打印出来。在 main 方法中创建人类的实例然后将信息显示。 public class Person { private String name; private int age; /** 在构造器中初始化成员变量 */ public Person(String name,int age){ this.name = name; this.age = age; } public static void main(String[] args) { Person p = new Person("张三",18); p.display(); } /** 显示姓名和年龄 */ public void display(){ System.out.println("姓名:"+name); System.out.println("年龄:"+age); } } 定义一个圆类——Circle,在类的内部提供一个属性:半径®,同时 提供 两个 方 法 : 计算 面积 ( getArea() ) 和 计算 周长(getPerimeter()) 。 通过两个方法计算圆的周长和面积并且对计算结果进行输出。最后定义一个测试类对 Circle 类进行使用。 public class Circle { private int r; /** 无参构造 */ public Circle(){} /** 有参构造,初始化半径*/ public Circle(int r){ this.r=r; } /** 也可以使用setR方法初始化半径 */ public void setR(int r){ this.r = r; } /**计算 面积 */ public void getArea(){ double area = Math.PI * r * r;//从Math工具类得到π的值 System.out.println("圆的面积为:"+area); } /** 计算 周长 */ public void getPerimeter(){ double zc = Math.PI * 2 * r; System.out.println("圆的周长为:"+zc); } } /** 测试 */ public class Test { public static void main(String[] args) { Circle c = new Circle(4);//初始半径为4,使用构造初始化 c.getArea(); c.getPerimeter(); } } 构造方法与重载:定义一个网络用户类,要处理的信息有用户 ID、用户密码、 email 地址。在建立类的实例时把以上三个信息都作为构造函数的参数输入, 其中用户 ID 和用户密码时必须缺省时 email地址是用户 ID 加上字符串"@gameschool.com"。 public class People { private String id; private String password; private String email; /** 无参构造 */ public People(){ } /** 全参构造 */ public People(String id,String password,String email){ this.id = id; this.password=password; this.email = email; } public People(String id,String password){ this.id = id; this.password=password; this.email=id+"@gameschool.com"; } public void show() { System.out.println("编号:"+this.id); System.out.println("密码:"+this.password); System.out.println("邮件:"+this.email); } public static void main(String[] args) { //调用全参构造 People p1 = new People("sxt0001","123456","[email protected]"); p1.show(); //调用无参构造 People p2 = new People("sxt0002","654321"); p2.show(); } } 定义一个类 Calculaion, 其中包含四个方法: 加(add()) 、 减(sub()) 、乘(times()) 和除(div()) 。 创建一个具有 main()函数的类。 在 main()函数中创建一个 Calculation 的实例对象并对其中的方法进行调用。 public class Calculaion { private double a; private double b; public Calculaion(double a,double b){ this.a=a; this.b=b; } public void add(){ System.out.println("a加b :"+(a+b)); } public void sub(){ System.out.println("a减b :"+(a-b)); } public void times(){ System.out.println("a乘b :"+(a*b)); } public void div(){ System.out.println("a除以b :"+(a/b)); } public static void main(String[] args) { Calculaion c = new Calculaion(7.0,3.0); c.add(); c.sub(); c.times(); c.div(); } } 定义一个类 Draw , 在 类 中 提供 3 个 方法:输出直角三角形(drawTrian()) 、 输出矩形(drawRec()) 及平行四边形(drawPra()) 。通过方法可以输出由“*” 组成的一个图形。 同时在类中包含两个属性:星号的个数(count) 、行数(lines) 。最后在测试类中进行调用。 public class Draw { private int count, lines; public Draw(){} public Draw(int count, int lines){ this.count=count; this.lines=lines; } /** 直角三角形 */ public void drawTrina() { for (int i = 0; i //每次增加1 System.out.print("*"); } System.out.println();//换行 } } /** 输出矩形 */ public void drawRec(){ for (int i = 0; i //每行数量固定 System.out.print("*"); } System.out.println(); } } /** 平行四边形 */ public void drawPra(){ for (int i = 0; i System.out.print(" "); } for (int j = 0; j Draw d = new Draw(5,5); //d.drawTrina(); //d.drawRec(); d.drawPra(); } } 创建一个空调,并调用制冷、制热、通风功能。空调包含的属性有品牌、匹数、温度,功能有加热、制冷、通风等功能。 public class AirConditioning { // 空调属性 String name; String pinpai; String hp;// 匹数 int tempeture; // 定义制冷行为 void cool() { tempeture--; } // 定义加热行为 void hot() { tempeture += 7; } //通风功能 void ventilate(){ System.out.println("空气通畅,温度不变"); } // 主函数 public static void main(String[] args) { AirConditioning kt = new AirConditioning(); kt.hp = "2匹"; kt.tempeture = 20; kt.pinpai = "格力"; kt.cool(); System.out.println("空调的温度是" + kt.tempeture); kt.hot(); System.out.println("空调的温度是" + kt.tempeture); kt.ventilate(); } } 定义一个表示学生信息的类 Student,要求如下: (1)类 Student 的属性如下: sNO 表示学号; sName 表示姓名; sSex 表示性别; sAge 表示 年龄;sJava:表示 Java 课程成绩。 (2)类 Student 带参数的构造方法: 在构造方法中通过形参完成对成员变量的赋值操作。 (3)类 Student 的方法成员: getNo():获得学号; getName():获得姓名; getSex():获得性别; getAge()获得年龄;getJava():获得 Java 课程成绩 public class Student { String sNO ; String sName; String sSex; int sAge; int sJava; public Student(String sNO, String sName, String sSex, int sAge, int sJava) { this.sNO = sNO; this.sName = sName; this.sSex = sSex; this.sAge = sAge; this.sJava = sJava; } public String getsNO() { return sNO; } public String getsName() { return sName; } public String getsSex() { return sSex; } public int getsAge() { return sAge; } public int getsJava() { return sJava; } }

(4) 根据类 Student 的定义,创建五个该类的对象,输出每个学生的信息,计算并输出这五个学生 Java 语言成绩的平均值,以及计算并输出他们 Java 语言成绩的最大值和最小值。

public class Test { public static void main(String[] args) { Student s1 = new Student("sxt0001", "张三", "男",18,90); Student s2 = new Student("sxt0002", "李四", "女",15,92); Student s3 = new Student("sxt0003", "王五", "男",17,93); Student s4 = new Student("sxt0004", "赵六", "男",21,95); Student s5 = new Student("sxt0005", "钱七", "男",19,97); System.out.println("\t学号\t姓名\t姓别\t年龄\t成绩"); System.out.println("\t"+s1.getsNO()+"\t"+s1.getsName() +"\t"+s1.getsSex()+"\t"+s1.getsAge()+"\t"+s1.getsJava()); System.out.println("\t"+s2.getsNO()+"\t"+s2.getsName() +"\t"+s2.getsSex()+"\t"+s2.getsAge()+"\t"+s2.getsJava()); System.out.println("\t"+s3.getsNO()+"\t"+s3.getsName() +"\t"+s3.getsSex()+"\t"+s3.getsAge()+"\t"+s3.getsJava()); System.out.println("\t"+s4.getsNO()+"\t"+s4.getsName() +"\t"+s4.getsSex()+"\t"+s4.getsAge()+"\t"+s4.getsJava()); System.out.println("\t"+s5.getsNO()+"\t"+s5.getsName() +"\t"+s5.getsSex()+"\t"+s5.getsAge()+"\t"+s5.getsJava()); int d = (s1.getsJava()+ s2.getsJava()+ s3.getsJava() + s4.getsJava()+ s5.getsJava())/5; System.out.println("java语言平均成绩:"+d); } }


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3