java对象与类

1.设计一个用来描述汽车的类,使用类的非静态成员变量来表示汽车的车主姓名、当前的速率和当前方向盘的转向角度,使用类的非静态成员方法来表示改变汽车的速率和停车两个操作。

源代码:

 1 package test;
 2 
 3 public class t1 {
 4         private String Name;//车主姓名
 5         private float Speed;//当前车速
 6         private float Degree;//当前方向盘转向角度
 7         public t1(String Name){
 8             this.Name = Name;
 9         }
10         public t1(String name,float speed,float degree){
11             this(name);
12             this.Speed = speed;
13             this.Degree = degree;
14         }
15         public String getName(){//车主姓名访问
16             return Name;
17         }
18         public float getDegree(){//当前方向盘转向角度访问
19             return Degree;
20         }
21         public float getSpeed(){//当前车速访问
22             return Speed;
23         }
24         public void changeSpeed(float Speed){//提供改变当前的车速
25             this.Speed = Speed;
26         }
27         public void stop(){//提供停车
28             this.Speed = 0;
29         }
30     public static void main(String[] args){
31         t1 car = new t1("小明:",200f,25f);
32         System.out.println("车主姓名:" +car.getName());
33         System.out.println("当前车速:"+car.getSpeed());
34         System.out.println("当前方向盘转向角:"+car.getDegree());
35         car.changeSpeed(80);
36         System.out.println("在调用changeSpeed(80)后,车速变为:"+car.getSpeed());

2.定义一个类实现银行帐户的概念,包括的变量有"帐号"和"存款余额",包括的方法有"存款"、"取款"、"查询余额"和”显示帐号”。定义主类,创建帐户类的对象,并完成相应操作。

源代码:

 

 1 package test;
 2 import java.util.*;
 3 public class t3 {
 4     private String User;//账户
 5     private double Money;//当前余额
 6     private double add;//存款金额
 7     private double subtract;//取款金额
 8     public t3(String User){
 9         this.User = User;
10     }
11     public t3(String User,double Money){
12         this(User);
13         this.Money = Money;
14     }
15     public String getUser(){//用户账号访问
16         return User;
17     }
18     public double getMoney(){//当前余额访问
19         return Money;
20     }
21     public void addMoney(double Money){//存款
22         this.Money+=Money;
23     }
24     public void subtractMoney(double Money){//取款
25         this.Money-= Money;
26     }
27     public static void main(String[] args){
28         t3 bank = new t3("12345678",34537.876);
29         System.out.println("账号:" +bank.getUser());
30         System.out.println("当前余额:"+bank.getMoney());
31         Scanner in = new Scanner(System.in);
32         System.out.println("输入存款金额");
33         double add = in.nextDouble();
34         System.out.println("输入取款金额");
35         double sub = in.nextDouble();
36         bank.addMoney(add);
37         System.out.println("存款后,当前余额:" +bank.getMoney());
38         bank.subtractMoney(sub);
39         System.out.println("取款后,当前余额:"+bank.getMoney());
40     }
41 }

 3.

设计一个类Shape(图形)包含求面积和周长的area()方法和perimeter()方法以及设置颜色的方法SetColor(),并利用Java多态技术设计其子类Circle(圆形)类、Rectangle(矩形)类和Triangle(三角形)类,并分别实现相应的求面积和求周长的方法。每个类都要覆盖toString方法。

海伦公式:三角形的面积等于s(s-a)(s-b)(s-c)的开方,其中s=(a+b+c)/2

 1 package test;
 2 public class t3 {
 3     public static void main(String[] args) {
 4         Circle c = new Circle(4,"white");
 5         System.out.println(c.toString());
 6         Rectangle r = new Rectangle(4, 5, "white");
 7         System.out.println(r.toString());
 8         Triangle t = new Triangle(3,4,5,"black");
 9         System.out.println(t.toString());
10     } }
11 abstract class Shape{
12     String color="red";
13     public double area(){
14         return -1;
15     }
16     public double perimeter(){
17         return -1;
18     }
19     public String SetColor(String a){
20         return color=a;
21     }
22 }
23 class Circle extends Shape{
24     private double bj;
25     Circle(){
26         bj=1;
27     }
28     Circle(double i,String col){
29         bj=i;
30         super.color=super.SetColor(col);
31     }
32     public void setBj(double b){
33         this.bj = b;
34     }
35     public double area(){
36         return Math.PI * bj * bj; }
37     public double perimeter(){
38         return Math.PI * bj * 2;
39     }
40     public String toString(){
41         return( "圆的半径为" + this.bj+"圆的面积:"+this.area()+"圆的周长:"+this.perimeter());
42     } }
43 class Rectangle extends Shape{
44     double h;
45     double w;
46     Rectangle(){
47     }
48     Rectangle(double hi,double wi,String col){
49         h=hi;
50         w=wi;
51         super.color=super.SetColor(col);
52     }
53     public double area(){
54         return h * w; }
55     public double perimeter(){
56         return (w+h)* 2;
57     }
58     public String toString(){
59         return( "矩形的长为" + this.h+"矩形的宽为"+this.w+"矩形的面积:"+this.area()+"矩形的周长:"+this.perimeter());
60     } }
61 class Triangle extends Shape{
62     double a;
63     double b;
64     double c;
65     Triangle(){
66     }
67     Triangle(double aa,double bb,double cc,String col){
68         a=aa;
69         b=bb;
70         c=cc;
71         super.color=super.SetColor(col);
72     }
73     public double area(){
74         double s =((a+b+c)/2);
75         return Math.sqrt (s*(s-a)*(s-b)*(s-c));
76     }
77     public double perimeter(){
78         return a+b+c;
79     }
80     public String toString(){
81         return( "三角形的长为" + this.a+"三角形的宽为"+this.b+"三角形的斜边"+this.c+"三角形的面积:"+this.area()+"三角形的周长:"+this.perimeter());
82     }
83 }

 

posted @ 2020-10-21 15:23  、晚风、  阅读(209)  评论(0编辑  收藏  举报