Java基础篇——面向对象编程


活动地址:CSDN21天学习挑战赛

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:
想系统/深入学习某技术知识点…
一个人摸索学习很难坚持,想组团高效学习…
想写博客但无从下手,急需写作干货注入能量…
热爱写作,愿意让自己成为更好的人…

 

1、面向对象介绍

         面向对象并不是一个技术,而是一种编程指导思想。它把现实世界的具体事物全部看成一个一个对象来解决问题。 

        我们为什么要使面向对象编程呢?

        生活中我们解决问题就是按照对象化的方式进行的。如果程序也能按照生活中的方式来解决问题,那么程序就更符合人类的思维习惯,代码看起来会更易理解、更简单。 

获取已有对象并使用

public class Test {
    public static void main(String[] args) {
        // 1、得到一个随机数对象,用于得到随机数
        Random r = new Random();
        int data = r.nextInt(10) + 1 ; // 生成 1-10之间的随机数
        System.out.println(data);
        // 2、创建一个扫描器对象,用于接收用户输入的数据
        Scanner sc = new Scanner(System.in);
        System.out.println("请您输入您的年龄:");
        int age = sc.nextInt();
        System.out.println(age);
    } 
}

2、类与对象

类:

        类(Class)是人脑对于若干具有相同(或相似)属性和行为的对象的抽象。是对一类事物的描述,是抽象的,概念上的定义。

对象:

        对象(Object)是人们要研究的具体事物,是实际存在的该类事物的每个个体,因此也称为实例(instance)。

类的实例化,即创建类的对象。

 注意事项:

  •  成员变量的完整定义格式是:修饰符 数据类型 变量名称 = 初始化值; 一般无需指定初始化值,存在默认值。
  •  类名首字母建议大写,且有意义,满足“驼峰模式”。
  •  一个Java文件中可以定义多个class类,且只能一个类是public修饰,而且public修饰的类名必须成为代码文件名。
  • 实际开发中建议还是一个文件定义一个class类。
  • 当堆内存中的 类对象 数组对象 ,没有被任何变量引用(指向)时,就会被判定为内存中的 “垃圾”。
  • Java存在自动垃圾回收器,会定期进行清理。

3、构造器(构造方法)

构造器的作用:用于初始化一个类的对象,并返回对象的地址。

初始化对象的格式:   类型  变量名称 = new 构造器

Car car = new Car();

构造器分为有参构造器和无参构造器

无参构造器:

        是默认存在的,初始化对象时,成员变量的数据均采用默认值。

有参构造器:

        在初始化对象的时候,同时可以为对象进行赋值。

注意事项:

  • 任何类定义出来,默认就自带了无参数构造器,写不写都有。
  • 一旦定义了有参数构造器,无参数构造器就没有了,此时就需要自己写一个无参数构造器了。

 4、this关键字

        作用:出现在成员方法、构造器中代表当前对象的地址,用于访问当前对象的成员变量、方法。

this出现在有参构造器中的用法:

public class Car {
    String name;
    double price;

    public Car(String name , double price){
        this.name = name;
        this.price = price; 
    } 
}

this出现在成员方法中的用法:

public class Car {
    String name;
    double price;

    public void goWith(String name){
        System.out.println(this.name + "正在和" + name + "一起学Java!!");
    } 
}

 

 5、封装

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

        封装(Encapsulation)本质上是一种信息隐藏的手段,即将对象的属性和行为封装为一个整体并使得用户(即使用该对象的其他对象)只能看到该对象的外部接口(即对象暴露给外部的行为 说明),而对象的内部实现(属性即行为的具体实现细节)对用户则是不可见的。封装的目的在于隔离对象的编写者与使用者——使用者无法(也不必)知晓对象的具体实现细节,而是通过编写者为对象提供的外部接口来访问该对象。

        面向对象中的类是封装良好的模块。封装所带来的最大好处是降低了软件系统的耦合程度,当外部接口涉及的行为的实现细节发生变化时,只要接口不变,则使用该接口的对象也不需要做任何修改。

封装的具体实现步骤:

  1. 一般对成员变量使用private(私有)关键字修饰进行隐藏,private修饰后该成员变量就只能在当前类中访问。
  2. 提供public修饰的公开的getter、setter方法暴露其取值和赋值。
public class Student {
    private int age;
    public int getAge() {
        return age; 
    }
    public void setAge(int age) {
        if (age >= 0 && age <= 200) {
            this.age = age;
        } else {
            System.out.println("请检查年龄数值");
        }
     } 
}

6、JavaBean

        JavaBean可以理解为实体类,其对象可以用于在程序中封装数据。

                                                              

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

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值