JAVA第八次作业

  1. 定义一个点类Point,包含2个成员变量xy分 别表示xy坐标,2个构造器Point()Point(int x0,y0),以及一个movePointint dx,int dy)方法实 现点的位置移动,创建两个Point对象p1p2,分 别调用movePoint方法后,打印p1p2的坐标。

//方法

 

package mmm;

 

public class Point {

public int getX() {

return x;

}

public void setX(int x) {

this.x = x;

}

public int getY() {

return y;

}

public void setY(int y) {

this.y = y;

}

private int x,y;

 

public void movePoint(int dx,int dy){

x+=dx;

y+=dy;

 

}

public Point(int x, int y) {

super();

this.x = x;

this.y = y;

}

public Point() {

super();

}

 

}

//主函数

package mmm;

 

public class aaa {

 

public static void main(String[] args) {

// TODO Auto-generated method stub

Point s1=new Point(4,6);

s1.movePoint(10, 20);

 

System.out.println("x坐标为:"+s1.getX()+"y坐标为:"+s1.getY());

 

Point s2=new Point(4,6);

s1.movePoint(30, 25);

 

System.out.println("x坐标为:"+s2.getX()+"y坐标为:"+s2.getY());

}

 

}

 

 

 

 

2、定义一个矩形类Rectangle:(知识点:对象的 创建和使用)[必做题] • 2.1 定义三个方法:getArea()求面积、getPer()求 周长,showAll()分别在控制台输出长、宽、面积 、周长。 • 2.2 2个属性:长length、宽width • 2.3 通过构造方法Rectangle(int width, int length), 分别给两个属性赋值 • 2.4 创建一个Rectangle对象,并输出相关信息

 

 

//方法

package mmm;

 

public class Rectangle {

public Rectangle() {

    }

    public Rectangle(int length, int width) {

        this.length = length;

        this.width = width;

    }

    

    int length;

    int width;

    public int getPer()

    {

        return length*2+width*2;

     }

    public int getArea() {

        return length*width;

    }

  

  

    public void showAll()

    {

        System.out.println("长:"+length);

        System.out.println("宽:"+width);

        System.out.println("面积:"+getArea());

        System.out.println("周长:"+getPer());

    }

}

 

//主函数

package mmm;

 

public class nnn {

 

public static void main(String[] args) {

// TODO Auto-generated method stub

Rectangle s=new Rectangle(20,10);

        s.showAll();

}

 

}

 

 

 

3、定义一个笔记本类,该类有颜色(char)和cpu 型号(int)两个属性。 [必做题] • 3.1 无参和有参的两个构造方法;有参构造方法可 以在创建对象的同时为每个属性赋值; • 3.2 输出笔记本信息的方法 • 3.3 然后编写一个测试类,测试笔记本类的各个 方法。

 

//方法

package mmm;

 

public class notebook {

 public notebook() {

    }

    public notebook(char color, int cpu) {

        this.color = color;

        this.cpu = cpu;

    }

    

    char color;

    int cpu;

    public void showAll() {

        System.out.println("颜色:"+color);

        System.out.println("型号:"+cpu);

}

}

//主函数

package mmm;

 

public class nnn {

 

public static void main(String[] args) {

// TODO Auto-generated method stub

notebook a=new notebook('蓝',20);

        a.showAll();

}

 

}

 

 

4、定义两个类,描述如下: [必做题] • 5.1定义一个人类Person• 5.1.1定义一个方法sayHello(),可以向对方发出问 候语“hello,my name is XXX” • 5.1.2有三个属性:名字、身高、体重 • 5.2定义一个PersonCreate类: • 5.2.1创建两个对象,分别是zhangsan33岁,1.73 lishi441.74 • 5.2.2分别调用对象的sayHello()方法。

//方法

package mmm;

 

public class stu {

 String name;

    String sio;

    double score;

}

 

//主函数

package mmm;

 

import java.util.Scanner;

 

 

 

public class text {

    

    public static void setClass(stu[] test)

    {

        Scanner input=new Scanner(System.in);

        for(int i=0;i<test.length;i++)

        {

            System.out.println("请输入第"+(i+1)+"个学生的姓名:");

            String name=input.next();

            test[i].name=name;

            System.out.println("请输入第"+(i+1)+"个学生的学号:");

            String sio=input.next();

            test[i].sio=sio;

            System.out.println("请输入第"+(i+1)+"个学生的成绩:");

            double score=input.nextDouble();

            test[i].score=score;

        }

        showAll(test);

    }

    

    public static void showAll(stu[] test)

    {

        int flag[]=new int[test.length];

        double temp=0;

        for(int i=0;i<test.length;i++)

        {

            for(int j=0;j<test.length-i-1;j++)

            {

                

                if(temp<test[j].score)

                {

                    temp=test[j].score;

                    flag[i]=j;

                }

            }

        }

        for(int i:flag) {

            System.out.println("姓名:"+test[i].name);

            System.out.println("学号:"+test[i].sio);

            System.out.println("成绩:"+test[i].score);

        }

    }

    public static void main(String[] args) {

 

        stu[] test=new stu[3];

        for(int i=0;i<test.length;i++)

        {

            test[i]=new stu();

        }

        setClass(test);

    }

 

}

 

 

 

5、定义两个类,描述如下: [必做题] • 6.1定义一个人类Person• 6.1.1定义一个方法sayHello(),可以向对方发出 问候语“hello,my name is XXX” • 6.1.2有三个属性:名字、身高、体重 • 6.1.3通过构造方法,分别给三个属性赋值 • 6.2定义一个Constructor类: • 6.2.1创建两个对象,分别是zhangsan33岁, 1.73lishi441.74 • 6.2.2分别调用对象的sayHello()方法。

//方法

package mmm;

 

public class Person {

public Person(String name, double wei, double hei) {

        this.name = name;

        this.wei = wei;

        this.hei = hei;

    }

 

    public Person() {

    }

 

    String name;

    double wei;

    double hei;

    

    

    

    public void sayHello() {

        System.out.println("hello,my name is "+name);

    }

}

 

 

 

//主函数

package mmm;

 

public class nnn {

 

public static void main(String[] args) {

// TODO Auto-generated method stub

Person P1=new Person();

        P1.hei=1.80;

        P1.wei=70;

        P1.name="w";    

        Person P2=new Person();

        P2.hei=1.73;

        P2.wei=95.5;

        P2.name="s";

        P1.sayHello();

        P2.sayHello();

}

 

}

 

 

 

6、定义一个汽车类Vehicle,要求如下:[选做题] • 7.1属性包括:汽车品牌brandString类型)、颜色 colorString类型)和速度speeddouble类型),并 且所有属性为私有。 • 7.2至少提供一个有参的构造方法(要求品牌和颜色可 以初始化为任意值,但速度的初始值必须为0)。 • 7.3为私有属性提供访问器方法。注意:汽车品牌一旦 初始化之后不能修改。 • 7.4定义一个一般方法run(),用打印语句描述汽车奔跑 的功能 • 7.5定义测试类VehicleTest,在其main方法中创建一个 品牌为“benz”、颜色为“black”的汽车。

//方法

package mmm;

 

public class Vehicle {

public String getBrand() {

return brand;

}

public void setBrand(String brand) {

this.brand = brand;

}

public String getColor() {

return color;

}

public void setColor(String color) {

this.color = color;

}

public double getSpeed() {

return speed;

}

public void setSpeed(double speed) {

this.speed = speed;

}

public Vehicle(String brand, String color, double speed) {

this.brand = brand;

this.color = color;

this.speed = 0;

}

private String brand;

private String color;

private double speed;

 

public void run() {

System.out.println("奔跑");

}

 

public  void nn (){

System.out.println("品牌名:"+brand+"颜色"+color+"速度"+speed);

}

}

 

//主函数

package mmm;

 

public class automobile {

 

public static void main(String[] args) {

// TODO Auto-generated method stub

Vehicle s1=new Vehicle(null, null, 0);

s1.setBrand("奔驰");

s1.setColor("白色");

s1.setSpeed(0.2);

System.out.println(s1.getBrand());

System.out.println(s1.getColor());

System.out.println(s1.getSpeed());

s1.run();

 

}

 

}

 

 

 

//测试类主函数

package mmm;

 

public class VehicleText {

public static void main(String[] args) {

// TODO Auto-generated method stub

 Vehicle text=new  Vehicle("benz","black",0);

 System.out.println("品牌"+text.getBrand());

 System.out.println("颜色"+text.getColor());

 System.out.println("速度"+text.getSpeed());

 text.run();

 

}

}

 

 

 

posted @   绫小路  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示