2024年3月27号java学习

方法

方法是程序中最小的执行单元。

方法的格式

public static 返回值类型 方法名(参数)

方法的重载

在同一个类中定义了多个相同名字的方法,这些同名方法具有相同的功能。但每个方法具有不同的参数类型或参数个数,这些同名的方法就构成了重载关系

参数不同:个数不同、类型不同、顺序不同

示例代码

package function;

public class reloadDemo{
    public static int IntSum(int a, int b) {
        return a + b;
    }

    public static double DoubleSum(double a, double b) {
        return a + b;
    }

    public static void main(String[] args) {
        System.out.println(IntSum(1, 2));
        System.out.println(DoubleSum(1.2, 3.2));
    }
}

面向对象

面向对象三大特征:封装、继承、多态

用来描述对象具备的共同特征

定义类

public class 类名 {

成员变量(代表属性,一般是名词)

成员行为(代表行为,一般是动词)

构造器

代码块

内部类

}

用来描述事物的类:javabean类

在javabean类中不写main方法

编写main方法的类:测试类

得到一个类(对象)

类名 对象名 = new 类名();

Scanner in = new Scanner(System.in)

类的实体,是一个真实存在的东西

在java中必须先设计类才能创建对象

封装

对象代表什么,就得封装对应的数据,并提供数据对应的行为

Private

一个修饰符,可以用来修饰成员变量和成员方法,被Private修饰的东西只能在本类中使用

如果其他的类需要使用被private的成员变量,那么就要提供对应的set和get方法,方法用public修饰

示例代码

girlFriend的类代码

package Private;

public class girlFriend {
    String name;//姓名
    private int age;//年龄
    int height;//身高

    public void setAge(int age) {//设置成员变量的年龄
        if (age >= 18 && age <= 50) {
            this.age = age;//使用this关键字可以区分成员变量和局部变量
        }
        else {
            System.out.println("age is error");
        }
    }

    public int getAge() {//返回成员变量的年龄
        return this.age;
    }
}
package Private;

public class PrivateDemo {
    public static void main(String[] args) {
        girlFriend girl = new girlFriend();

        girl.name = "l";
        System.out.println("age = " + girl.getAge());
        girl.setAge(18);
        girl.height = 180;

        System.out.println("name = " + girl.name);
        System.out.println("age = " + girl.getAge());
        System.out.println("height = " + girl.height);
    }
}

this关键字

用来区分方法中调用成员变量还是局部变量,加this是调用成员变量

示例代码

package Private;

public class girlFriend {
    String name;//姓名
    private int age;//年龄
    int height;//身高

    public void setAge(int age) {//设置成员变量的年龄
        if (age >= 18 && age <= 50) {
            this.age = age;//使用this关键字可以区分成员变量和局部变量
        }
        else {
            System.out.println("age is error");
        }
    }

    public int getAge() {//返回成员变量的年龄
        return this.age;
    }
}

构造方法

特点:

  1. 方法名与类名相同,大小写也要一样
  2. 没有返回值类型,连void都没有
  3. 没有具体返回值

如果没有写任何的构造方法,那么虚拟机会自动帮我们加上一个空参构造方法。

但如果定义了构造方法,虚拟机将不再提供空参构造方法

示例代码

类中定义了有参的构造方法

package construct;

public class girlFriend {
    String name;//姓名
    private int age;//年龄
    int height;//身高

    public girlFriend(String name, int age, int height) {
        this.name = name;
        this.age = age;
        this.height = height;
    }
    public void setAge(int age) {//设置成员变量的年龄
        if (age >= 18 && age <= 50) {
            this.age = age;//使用this关键字可以区分成员变量和局部变量
        }
        else {
            System.out.println("age is error");
        }
    }

    public int getAge() {//返回成员变量的年龄
        return this.age;
    }
}
package construct;

public class girlFriendDemo {
    public static void main(String[] args) {
        girlFriend girl = new girlFriend();

        System.out.println(girl.height);
    }
}

编译器会报错

示例代码

类代码

package construct;

public class girlFriend {
    String name;//姓名
    private int age;//年龄
    int height;//身高
    public void setAge(int age) {//设置成员变量的年龄
        if (age >= 18 && age <= 50) {
            this.age = age;//使用this关键字可以区分成员变量和局部变量
        }
        else {
            System.out.println("age is error");
        }
    }

    public int getAge() {//返回成员变量的年龄
        return this.age;
    }
}

使用空参构造

package construct;

public class girlFriendDemo {
    public static void main(String[] args) {
        girlFriend girl = new girlFriend();

        System.out.println(girl.height);
    }
}

构造方法的重载

带参构造方法和无参构造方法,两者方法名相同但参数不同,这叫做构造方法的重载

标准javabean

要求:

  1. 类名需要见名知意
  2. 成员变量使用private修饰
  3. 至少提供两个构造方法(无参和有参)
  4. 成员方法需要提供每一个成员变量的修改和查询
posted @ 2024-03-27 15:31  lwj1239  阅读(28)  评论(0)    收藏  举报