java面向对象基础

对象

  • 对象是计算机中具体的数据信息

  • 类是对现实生活中一类具有共同属性和行为的事务的抽象
  • 类是对象的数据类型
  • 类是具有相同属性和行为的一组对象的集合

对象的属性

  • 属性:对象具有的各种特征,每个对象的每个属性都拥有特定的值

对象的行为

  • 行为:对象能够执行的操作

类和对象的关系

  • 类:类是对现实生活中一类具有共同属性和行为的事物的抽象
  • 对象:是能够看得到摸得着的真实存在的实体
    在这里插入图片描述

类的定义

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

public class Phone {
    public static void main(String[] args) {
        //成员变量
        String brand;
        int price;
    }

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

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

成员变量和局部变量的区别

在这里插入图片描述


package OOP.Example;
/*
    学生类
 */
class Student {
    //创建对象
    String name;
    //int age;
    private int age;
/*
    private关键字
        是一个权限修饰词
        可以修饰成员(成员变量和成员方法)
        作用是保护成员不被别的类使用,被private修饰的成员只在本类中才能访问
    针对private修饰的成员变量,如果需要其他类使用,提供相应的操作
        提供“get变量名()”方法,用于获取成员变量的值,方法用public修饰
        提供“set变量名(参数)”方法,用于设置成员变量的值,方法用public修饰
*/
    //提供get/set方法
    public void setAge(int a){
        //age = a;
        if (a<0 || a>120){
            System.out.println("你给的年龄有误");
        }else{
            age = a;
        }
    }
    public int getAge(){
        return age;
    }

    //成员方法
    public void study(){
        System.out.println("好好学习");
    }

    public void doHomewerk(){
        System.out.println("键盘敲烂");
    }
    public void show(){
        System.out.println(name + "," + age);
    }
}
/*
    学生测试类
 */
public class StudentDemo {
    public static void main(String[] args) {
        //创建对象
        Student s =new Student();

        //使用对象
        //System.out.println(s.name + "," + s.age);

        s.name = "林青霞";
        // s.age = 30;
        s.setAge(30);
        //s.setAge(-30);  //这里的结果0是age的默认值

        s.show();
        s.study();
        s.doHomewerk();
    }
}

this关键字

this关键字
1:this 修饰的变量用于指代成员变量
方法的形参如果与成员变量同名,不带this修饰的变量指的是形参,而不是成员变量
方法的形参没有与成员变量同名,不带this修饰的变量指的是成员变量
2:什么时候使用this呢?
解决局部变量隐藏成员变量(同名时)
3:代表所在类的对象引用
记住:方法在被哪个对象调用,this就代表哪个对象

public Student(String name, int age) {
        this.name = name;
        this.age = age;
public void setName(String name) {
        this.name = name;
    }
 public void setAge(int age) {
        this.age = age;
    }

封装

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

构造方法

class Student{
    String name;//属性
    int age;//属性

    public Student(){//无参构造
    }

    public Student(String name,int age){//有参构造
        this.name=name;
        this.age=age;
    }

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

    public void setAge(int age){//方法
        this.age = age;
    }

}

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值