JAVA第八次作业
- 定义一个点类Point,包含2个成员变量x、y分 别表示x和y坐标,2个构造器Point()和Point(int x0,y0),以及一个movePoint(int dx,int dy)方法实 现点的位置移动,创建两个Point对象p1、p2,分 别调用movePoint方法后,打印p1和p2的坐标。
//方法
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创建两个对象,分别是zhangsan,33岁,1.73 ;lishi,44,1.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创建两个对象,分别是zhangsan,33岁, 1.73;lishi,44,1.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属性包括:汽车品牌brand(String类型)、颜色 color(String类型)和速度speed(double类型),并 且所有属性为私有。 • 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();
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通