【JAVA学习面对对象】笔记

包括:类、封装、private关键字、this关键字、构造方法、标准JavaBean和键盘录入的两套体系这几部分的介绍

类和对象基础

类的组成是由属性和行为两部分组成

  • 属性:在类中通过成员变量来体现(类中方法外的变量)
  • 行为:在类中通过成员方法来体现(和前面的方法相比去掉static关键字即可)

类的定义步骤:

①定义类

②编写类的成员变量

③编写类的成员方法

public class 类名 {
    
    
	// 成员变量
	变量1的数据类型 变量1;
	变量2的数据类型 变量2;// 成员方法
	方法1;
	方法2;	
}

实列

/*
    手机类:
        类名:
        手机(Phone)

        成员变量:
        品牌(brand)
        价格(price)

        成员方法:
        打电话(call)
        发短信(sendMessage)
 */
public class Phone {
    
    
    //成员变量
    String brand;
    int price;

    //成员方法
    public void call() {
    
    
        System.out.println("打电话");
    }

    public void sendMessage() {
    
    
        System.out.println("发短信");
    }
}

在这里插入图片描述
演示
创建手机的类
创建一个小米手机的对象
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

封装

  1. 封装概述
    是面向对象三大特征之一(封装,继承,多态)

    扫描二维码关注公众号,回复: 16570857 查看本文章

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

  2. 封装代码实现
    将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问
    成员变量private,提供对应的getXxx()/setXxx()方法
    在这里插入图片描述

private关键字

private是一个修饰符,可以用来修饰成员(成员变量,成员方法)

  • 被private修饰的成员,只能在本类进行访问,针对private修饰的成员变量,如果需要被其他类使用,提供相应的操作
  • 提供“get变量名()”方法,用于获取成员变量的值,方法用public修饰
  • 提供“set变量名(参数)”方法,用于设置成员变量的值,方法用public修饰

代码展示

public class GirlFriend {
    
    
    //属性
    private String name;
    private int age;
    private String gender;


    //针对每一个私有化的成员变量,都要提供get和set方法
    //使用set方法给成员变量赋值
    //使用get方法获取成员变量的值

    //给成员变量name进行赋值
    //没有返回值,用形参name接受
    public void setName(String name){
    
    
        //局部变量表示测试类中调用方法传递来的数据
        //把传递过来的name赋值给等号左边表示成员位置的name
        this.name = name;
    }

    //对外提供name的属性
    public String getName(){
    
    
        return name;
    }

    //age
    //set
    public void setAge(int age){
    
    
        if (age>=18 && age<=50){
    
    
            this.age = age;
        }else {
    
    
            System.out.println("非法参数");
        }
    }

    //get
    public int getAge(){
    
    
        return age;
    }

    //gender
    //set
    public void setGender(String gender){
    
    
       this.gender = gender;
    }

    //get
    public String getGender(){
    
    
        return gender;
    }






    //行为
    public void sleep() {
    
    
        System.out.println("她在休息");
    }

    public void eat() {
    
    
        System.out.println("她在吃饭");
    }
}

测试代码

public class GirlFriendTest {
    
    
    public static void main(String[] args) {
    
    
        //创建GirlFriend的对象
        GirlFriend gf1 = new GirlFriend();

        //用private、set和get后的赋值不能再用下面操做,需要重新更改
        //gf1.name = "小诗是";
        //gf1.age = 18;
        //gf1.gender = "女";


        //System.out.println(gf1.name);
        //System.out.println(gf1.age);
        //System.out.println(gf1.gender);

        //gf1.eat();
        //gf1.sleep();


        //赋值
        gf1.setName("林青霞");
        gf1.setAge(18);
        gf1.setGender("女");

        System.out.println(gf1.getName());
        System.out.println(gf1.getAge());
        System.out.println(gf1.getGender());

        gf1.eat();
        gf1.sleep();
    }
}

运行结果
在这里插入图片描述

在这里插入图片描述

this关键字

  • this修饰的变量用于指代成员变量,其主要作用是(区分局部变量和成员变量的重名问题)
  • 方法的形参如果与成员变量同名,不带this修饰的变量指的是形参,而不是成员变量
  • 方法的形参没有与成员变量同名,不带this修饰的变量指的是成员变量

在这里插入图片描述
就近原则
在这里插入图片描述
在这里插入图片描述

构造方法

构造方法是一种特殊的方法

  • 作用:创建对象 Student stu = new Student();
  • 创建对象的时候,虚拟机自动调用构造方法,作用是给成员变量初始化。
    在这里插入图片描述
    构造方法没有返回值,不能写void
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    创建对象是new在做,他只是构造方法的其中一个步骤。

标准JavaBean

在这里插入图片描述

快捷键
Alt+INS
在这里插入图片描述
点击Constructor,后出现
在这里插入图片描述
点击红色部分,会出现空参
按Shift并点击最后一行会全部选择,然后出现全部带参构造
同样的方法选择
在这里插入图片描述
然后点击Ctrl+A可以全选,然后会对全部参数出现get和set
最后可以安装插件ptg一键生成
设置好类的属性以后
在这里插入图片描述
右键空白处,然后选择红色部分,即可一键生成
在这里插入图片描述

键盘录入的两套体系

  • 第一套体系:

nextInt();接受整数
nextDouble();接受小数
next();接受字符串
这种体系遇到空格,制表符和回车就会通知接受。这些符号后面的数据就不会被接受。

  • 第二套体系

nextLine();接受字符串

一般情况下两种体系不要联合使用

TIPS

在idea中ctrl+d可以复制上一行
格式化代码:Ctrl+Alt+L

Car car = arr[i];//先输入右边,再按ctrl + alt + v 可自动生成左边

下面的操作可以同时查看两个代码页面
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Luohuasheng_/article/details/131674819