设为首页 加入收藏

TOP

JAVA SE基础《八》 ---- 面对对象编程(一)
2023-08-06 07:49:32 】 浏览:83
Tags:JAVA 基础 《八》 ----

目录

一、面向对象编程快速入门

二、深刻认识面向对象

三、对象在计算机中的执行原理

四、类和对象的一些注意事项

五、其他语法:this

六、其他语法:构造器

七、其他语法:封装

八、其他语法:实体JavaBean

九、面向对象编程综合案例

十、补充知识:成员变量、局部变量的区别小结

 

前言

 

 Student类

package com.ctgu.object;

public class Student {
    String name;
    double chinese;
    double math;

    public void printTotalScore(){
        System.out.println(name + "的总成绩是:" + (chinese + math));
    }

    public void printAverageScore(){
        System.out.println(name + "的平均成绩是:" + (chinese + math) / 2);
    }
}

Test类

package com.ctgu.object;

public class Test {
    public static void main(String[] args) {
        // 目标:面向对象编程快速入门
        // 1、创建一个学生对象,封装波妞的数据
        Student s1 = new Student();
        s1.name = "波妞";
        s1.chinese = 100;
        s1.math = 100;
        s1.printTotalScore();
        s1.printAverageScore();

        // 2、再创建一个学生对象,封装波仔的数据
        Student s2 = new Student();
        s2.name = "波仔";
        s2.chinese = 59;
        s2.math = 100;
        s2.printTotalScore();
        s2.printAverageScore();
    }
}

 一、面向对象编程快速入门

  • 开发一个一个的对象,把数据交给对象,再调用对象的方法来完成对数据的处理。

 

二、深刻认识面向对象

1、面向对象编程有啥好处?

  •  汽车的数据 找汽车对象处理
  • 手机的数据 找手机对象处理
  • 学生的数据 找学生对象处理
  • 符合人类思维习惯,编程更简单、更直观

2、程序中的对象到底是个啥?

  • 对象本质上是一种特殊的数据结构

  •  class也就是,也称为对象的设计图(或者对象的模板)。

 总结

1、面对对象编程有啥好处?

  • 凡事找对象的编程思路,更加符合人类思维习惯,编程也会更直观。

2、对象是啥?如何得到?

  • 对象是一种特殊的数据结构。
  • 对象是用类new出来的,有了类就可以创建出对象。

 3、面向对象编程这种套路是咋回事?

  • 祖师爷认为万物皆对象,谁的数据谁处理。

 

三、对象在计算机中的执行原理

多个对象在计算机中的执行原理

 总结

1、对象在计算机中的执行原理是怎么回事?

  • Student s1 = new Student();
  • 每次new Student(),就是在堆内存中开辟一块区域代表一个学生对象。
  • s1变量里面记住的是学生对象的地址。

 

四、类和对象的一些注意事项

类和对象的一些注意事项

  • 类名建议用英文单词,首字母大写,满足驼峰模式,且要有意义,比如:Student、Car...
  • 类中定义的变量也称为成员变量(对象的属性),类中定义的方法也称为成员方法(对象的行为)。
  • 成员变量本身存在默认值,同学们在定义成员变量时一般来说不需要赋初始值(没有意义)。

  •  一个代码文件中,可以写多个class类,但只能一个用public修饰,且public修饰的类名必须成为代码文件名。
  • 对象与对象之间的数据不会相互影响,但多个变量指向同一个对象时就会相互影响了。
  • 如果某个对象没有一个变量引用它,则该对象无法被操作了,该对象会成为所谓的垃圾对象。

如果某个对象没有任何变量指向它,需要注意说明?

 注意:当堆内存中的对象,没有被任何变量引用(指向)时,就会被判定为内存中的“垃圾”。

java存在自动垃圾回收机制,会自动清除掉垃圾对象,程序员不用操心。

 

五、this

this是什么

  • this就是一个变量,可以用在方法中,来拿到当前对象。

Student类

package com.ctgu.thisdemo;

public class Student {
    public void printThis(){
        System.out.println(this);
    }
}

Test类

package com.ctgu.thisdemo;

public class Test {
    public static void main(String[] args) {
        // 目标:认识this,掌握this的应用场景。
        Student s1 = new Student();
        System.out.println(s1);
        s1.printThis();
        System.out.println("---------------------");

        Student s2 = new Student();
        System.out.println(s2);
        s2.printThis();
    }
}

This的执行原理

 this有啥应用场景呢?

  • this主要用来解决:变量名称冲突问题的
package com.ctgu.thisdemo;

public class Student {
    double score;
    public void printThis(){
        System.out.println(this);
    }

    public void printPass(double score){
        if(this.score > score){
            System.out.println("恭喜您,您成功考入了哈弗大学了~~");
        }else{
            System.out.println("落选了");
        }
    }
}

总结

1、this关键字是什么?

  • this就是一个变量,可以用在方法中,用来拿到当前对象;哪个对象调用方法,this就指向哪个对象,也就是拿到哪个对象。

2、this关键字在实际开发中常用来干啥?

  • 用来解决对象的成员变量与方法内部变量的名称一样时,导致访问冲突问题的。

 

多学一招:方法里的this到底是如何拿到调用它的对象的

 

六、构造器

关于构造器,需要同学们掌握的目标

 构造器是什么样子?

 构造器有什么特点?

  • 创建对象时,对象会去调用构造器。
Student s = new Student();

构造器的常见应用场景

  • 创建对象时,同时完成对对象成员变量(属性)的初始化赋值。

Student类

package com.ctgu.constructor;

public class Student {
    String na
首页 上一页 1 2 3 4 下一页 尾页 1/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇服务端apk打包教程 下一篇quarkus依赖注入之七:生命周期回..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目