1、定义一个点类Point,包含2个成员变量x、y分别表示x和y坐标,2个构造器Point()和Point(intx0,y0),以及一个movePoint(int dx,int dy)
方法实现点的位置移动,创建两个Point对象p1、p2,分别调用movePoint方法后,打印p1和p2的坐标。
package heihei; public class Point { int x; int y; public Point() {} public Point(int x0,int y0){ this.x=x0; this.y=y0; } public void movePoint(int dx,int dy){ System.out.printf("移动前点的坐标(x:%d,y:%d) ",this.x,this.y); System.out.printf("移动量为(x:%d,y:%d) ",dx,dy); this.x +=dx; this.y +=dy; System.out.printf("移动后点的坐标(x:%d,y:%d) ",this.x,this.y); } }
package heihei; public class text { public static void main(String[] args) { // TODO Auto-generated method stub Point p1=new Point(1,2); Point p2=new Point(3,4); p1.movePoint(p2.x,p2.y); } }
2、定义一个矩形类Rectangle:(知识点:对象的
创建和使用)[必做题]
• 2.1 定义三个方法:getArea()求面积、getPer()求
周长,showAll()分别在控制台输出长、宽、面积
、周长。
• 2.2 有2个属性:长length、宽width
• 2.3 通过构造方法Rectangle(int width, int length),
分别给两个属性赋值
• 2.4 创建一个Rectangle对象,并输出相关信息
package haha; public class Rectangle { double length; double width; public Rectangle(double length,double width){ this.length=length; this.width=width; } public double getArea(double length,double width){ return this.length * this.width; } public double getPer(double length,double width){ return 2 * (this.length+this.width); } public void showAll(double length,double width){ System.out.printf("长方形的长为:%3.3f,宽为:%3.3f ",this.length,this.width); System.out.printf("长方形的面积为:%3.3f ",getArea(length,width)); System.out.printf("长方形的周长为:%3.3f ",getPer(length,width)); } }
package haha; public class test { public static void main(String[] args) { // TODO Auto-generated method stub Rectangle rectangle=new Rectangle(3,4); rectangle.showAll(rectangle.length,rectangle.width); } }
• 3、定义一个笔记本类,该类有颜色(char)和cpu
型号(int)两个属性。 [必做题]
• 3.1 无参和有参的两个构造方法;有参构造方法可
以在创建对象的同时为每个属性赋值;
• 3.2 输出笔记本信息的方法
• 3.3 然后编写一个测试类,测试笔记本类的各个
方法。
package hehe; public class Computer { private char color; private int cpu; public Computer (){} public Computer(char color, int cpu){ this.color=color; this.cpu=cpu; } public int getCpu(){ return cpu; } public char getColor(){ return color; } public void setCpu(int cpu){ this.cpu=cpu; } public void setColor(char color){ this.color=color; } public void showComputer(){ System.out.printf("笔记本电脑颜色:%c CPU:%d ",getColor(),getCpu()); } }
package hehe; public class test { public static void main(String[] args) { // TODO Auto-generated method stub Computer computer=new Computer(); computer.showComputer(); Computer computer2=new Computer('红',0722); computer2.showComputer(); } }
6、定义两个类,描述如下: [必做题]
• 6.1定义一个人类Person:
• 6.1.1定义一个方法sayHello(),可以向对方发出
问候语“hello,my name is XXX”
• 6.1.2有三个属性:名字、身高、年龄
• 6.1.3通过构造方法,分别给三个属性赋值
• 6.2定义一个Constructor类:
• 6.2.1创建两个对象,分别是zhangsan,33岁,
1.73;lishi,44,1.74
• 6.2.2分别调用对象的sayHello()方法。
package xixi; public class Person { private String name=null; private double hight; private double weight; public Person(String name,double hight,double weight){ this.name=name; this.hight=hight; this.weight=weight; } public String getName(){ return name; } public double getHight(){ return hight; } public double getWeight(){ return weight; } public void setName(String name){ this.name=name; } public void setHight(double hight){ this.hight=hight; } public void setWeight(double weight){ this.weight=weight; } public void sayHello(){ System.out.printf("hello,my name is %s! ", name); } }
package xixi; public class test { public static void main(String[] args) { // TODO Auto-generated method stub Person person1=new Person("zhangsqsan",33,1.73); Person person2=new Person("lisi",44,1.74); person1.sayHello(); person2.sayHello(); } }