面向对象基础编程(oop)

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

一 . 入门,搞懂对象

1.什么是面向对象

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

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.0);

  }
}
public class Test {
    public static void main(String[] args) {
        Student s1=new Student();
        s1.name="播妞";
        s1.chinese=100;
        s1.math=100;
        s1.printTotalScore();
        s1.printAvwrageScore();
        Student s2=new Student();
        s2.name="播z仔";
        s2.chinese=60;
        s2.math=100;
        s2.printTotalScore();
        s2.printAvwrageScore();
        
    }
}

2.程序中的对象是什么?

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

3.对象是怎么出来的?

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

二 . 对象执行原理,类与对象注意事项

1.如何识别引用类型的变量?

  • Student s1=new Student();
  • s1变量中存储的是对象的地址,因此变量s1也成为引用类型的变量。

2.类与对象的一些注意事项

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

    byte ,short ,char, int,long

    float ,double

    boolean

    0

    0.0

    false

    引用类型数组,Stringnull

    修饰符  数据类型  变量名称 = 值 ;

  • 一个代码中,可以写多个class类,但只能一个public修饰,且public修饰的类名必须成为代码文件名。

  • 对象与对象之间的数据不会相互影响,但多个变量指向同一个对象时就会相互影响了。

  • 如果某个对象没有一个变量引用它,则该对象无法被操作了,该对象会成为所谓的垃圾对象。

三. this 关键字

1. this是什么?

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

四.构造器

1.构造器长什么样子:

构造器是特殊的方法,没有返回值类型,方法的名字必须与所在的类名一模一样。

​
public class Student{
     /**构造器*/
    public Student(){
       ...
   }

}

2.构造器的注意事项:

  • 类在设计时,如果不写构造器,Java会为类自动生成一个无参构造器。
  • 一旦定义了有参数的构造器,Java就不会帮我们的类自动生成无参构造器了,此时就建议自己手写一个无参构造器出来了。

五. 封装

1.什么是封装?

就是用类设计对象处理某一事物的数据时,应该把要处理的数据,以及处理这些数据的方法,设计到一个对象中去。

2.封装的设计规范:合理隐藏,合理暴露

public class Student{
    public double score; //暴露了
    private String name; //隐藏起来了,及外部不能访问
}

六.实体JavaBean

1.什么是实体类,有啥特点?

  • 成员变量必须私有,且要为他们提供get,set方法;必须有无参构造器。
  • 仅仅只是一个用来保存数据的java类,可以用它创建对象,保存某个事物的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值