1. 程式人生 > 實用技巧 >Java無參有參

Java無參有參

第一題:分析以下需求,並用程式碼實現
手機類Phone
屬性:
品牌brand
價格price
行為:
打電話call()
發簡訊sendMessage()
玩遊戲playGame()

要求:
1.按照以上要求定義類,屬性要私有,生成空參、有參構造,setter和getter方法
2.定義測試類,在main方法中建立該類的物件並使用set方式給屬性賦值(價格:998,品牌:小米)
3.呼叫三個成員方法,列印格式如下:
正在使用價格為998元的手機打電話....
正在使用小米品牌的手機發簡訊....
正在使用價格為998元的小米品牌的手機玩遊戲....

手機類

package person;
public class Person {
    private String brand;
    private int price;
    void Person(){
        System.out.println("品牌為"+brand+"價格為"+price);
    }
    void call(int price){
        System.out.println("正在使用價格為"+price+"元的手機打電話...");
    }
    void sendMessage(String brand){
        System.out.println("正在使用"+brand+"品牌的手機發簡訊...");
    }
    void playGame(String brand,int price){
        System.out.println("正在使用價格為"+price+"元的"+brand+"品牌的手機玩遊戲...");
    }

    public String getBrand() {
        return brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    public int getPrice() {
        return price;
    }

    public void setPrice(int price) {
        this.price = price;
    }
}

主方法類

public class Demo01 {
    public static void main(String[] args) {
        Person p1=new Person();
        p1.setBrand("小米");
        p1.setPrice(998);
        p1.Person();
        p1.call(998);
        p1.sendMessage("小米");
        p1.playGame("小米",998);
    }
}

第二題:分析以下需求,並用程式碼實現
1.貓類Cat
屬性:
毛的顏色color
品種breed
行為:
吃飯eat()
抓老鼠catchMouse()
2.狗類Dog
屬性:
毛的顏色color
品種breed
行為:
吃飯()
看家lookHome()
要求:
1.按照以上要求定義Cat類和Dog類,屬性要私有,生成空參、有參構造,setter和getter方法
2.定義測試類,在main方法中建立每個類的物件並給屬性賦值(演示兩種方法:setter方法和構造方法)
3.呼叫每個物件的成員方法,列印格式如下:
花色的波斯貓正在吃魚.....
花色的波斯貓正在逮老鼠....
黑色的藏獒正在啃骨頭.....
黑色的藏獒正在看家.....

貓類和狗類整合:

package person;
public class Person02 {
     static String color;
     static String breed;

    public String getColor() {
        return color;
    }
    void  eat(){
        System.out.println(color+"的"+breed+"正在吃魚...");
    }
    void catchMouse(){
        System.out.println(color+"的"+breed+"正在逮老鼠...");
    }
    void lookHome(){
        System.out.println(color+"的"+breed+"正在看家.....");
    }
    void lunch(){
        System.out.println(color+"的"+breed+"正在啃骨頭.....");
    }
    public void setColor(String color) {
        this.color = color;
    }

    public String getBreed() {
        return breed;
    }

    public void setBreed(String breed) {
        this.breed = breed;
    }
}

主方法:

public class Demo02 {
    public static void main(String[] args) {
        Person02 p1=new Person02();
        p1.setColor("花色");
        p1.setBreed("波斯貓");
        p1.eat();
        p1.catchMouse();
        Person02 p2=new Person02();
        p2.setColor("黑色");
        p2.setBreed("藏獒");
        p2.lunch();
        p2.lookHome();
    }
}

第三題:分析以下需求,並用程式碼實現
1.老師類Teacher
屬性:
姓名name
年齡age
講課內容content
行為:
吃飯
講課
2.學生類Student
屬性:
姓名name
年齡age
學習內容content
行為:
吃飯eat()
學習study()
要求:
1.按照以上要求定義Teacher類和Student類,屬性要私有,生成空參、有參構造,setter和getter方法
2.定義測試類,在main方法中建立每個類的物件並給屬性賦值(演示兩種方法:setter方法和構造方法)
3.呼叫每個物件的成員方法,列印格式如下:
年齡為30的周志鵬老師正在吃飯....
年齡為30的周志鵬老師正在亢奮的講著Java基礎中面向物件的知識........("Java基礎中面向物件"代表老師講課的內容)
年齡為18的韓光同學正在吃飯....
年齡為18的韓光同學正在專心致志的聽著面向物件的知識....("面向物件"代表學生學習的內容)

教師類:

package person;

public  class Teacher{
    static String name;
    static int age;
    static String content;

    public static String getName() {
        return name;
    }

    public static void setName(String name) {
        Teacher.name = name;
    }

    public static int getAge() {
        return age;
    }

    public static void setAge(int age) {
        Teacher.age = age;
    }

    public static String getContent() {
        return content;
    }

    public static void setContent(String content) {
        Teacher.content = content;
    }

    //年齡為30的周志鵬老師正在吃飯....
    void eat(){
        System.out.println("年齡為"+age+"的"+name+"老師正在吃飯...");
    }
    //年齡為30的周志鵬老師正在亢奮的講著Java基礎中面向物件的知識........
    void  stu(){
        System.out.println("年齡為"+age+"的"+name+"老師正在亢奮的講著"+content+"的知識...");
    }
    //年齡為18的韓光同學正在吃飯....
    void lunch(){
        System.out.println("年齡為"+ getAge()+"的"+getName()+"同學正在吃飯...");
    }
    //年齡為18的韓光同學正在專心致志的聽著面向物件的知識....("面向物件"代表學生學習的內容)
    void study(){
        System.out.println("年齡為"+getAge()+"的"+getName()+"同學正在專心致志的聽著"+getContent()+"的知識...");
    }

}

學生類:

public  class  Student extends  Teacher{
    Teacher t1=new Teacher();
}    

主方法:

public class Demo03 {
    public static void main(String[] args) {
        Teacher t1=new Teacher();
        t1.setName("周志鵬");
        t1.setAge(30);
        t1.setContent("Java基礎中面向物件");
        t1.stu();
        t1.eat();
        Student s1=new Student();
        s1.setName("韓光");
        s1.setAge(18);
        s1.setContent("面向物件");
        s1.lunch();
        s1.study();
    }
}

第四題:分析以下需求,並用程式碼實現
定義人類Person,包含以下成員:
成員屬性:
姓名 name( String型別)
年齡 age(double型別)

1.按照以上要求定義Person,屬性要私有,生成空參、有參構造,setter和getter方法
2.定義測試類:根據如下需求建立多個物件(使用滿參構造建立,即有參構造).
老王-35 小芳-23
3.通過兩個物件,比較誰的年齡大,並打印出來.
例: 老王年齡比較大

People類(人類)

package person;
public class People {
    private String name;
    private double age;
    void People(){

    }
    void People(String name,double age){

    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public double getAge() {
        return age;
    }

    public void setAge(double age) {
        this.age = age;
    }
}

主方法:

public class Demo04 {
    public static void main(String[] args) {
        People p1=new People();
        p1.setName("老王");
        p1.setAge(35);
        People p2=new People();
        p2.setName("小芳");
        p2.setAge(23);
        if (p1.getAge()>p2.getAge()){
            System.out.println(p1.getName()+"年齡比較大");
        }else {
            System.out.println(p2.getName()+"年齡比較大");
        }
    }
}