JavaSE—面向对象

Java学习—面向对象

一.面向对象思想概述

面向对象是基于面向过程的编程思想,当需求单一,或者简单时,我们一步一步去操作是没问题的,效率也可以达到很高,但是随着需求的更改、功能的增多,发现需要面对每一个步骤都很繁琐,这时就需要进行思考,能不能把这些步骤和功能在进行封装,根据功能的不同,进行不同的封装,功能类似的封装在一起,这样结构逐渐清晰。使用时找到对应的类,这就是面向对象的思想概述。
面向过程:强调是每一个功能的步骤
面向对象:强调的是对象,然后由对象去调用功能
举例:

洗衣服:换下脏衣服---盛水---浸泡---手搓---漂清---晾干
全自动洗衣机------------一键洗衣 烘干

二.面向对象的基本特征

封装(encapsulation)
把数据和函数包装在一个单独的单元(称为类)的行为称为封装
在一个对象内部,某些代码和某些数据可以是私有的,不能被外界访问,通过这种方式,对象内部数据提供了不同级别的保护,以防止程序中无关的部分意外改变或错误使用了对象的私有部分
继承(inheritance)
是可以让某个类型的对象获得另一个类型对象的属性的方法

  • 分类原则:每一个子类都具有父类的公共特性
  • 注意:每个子类只定义这个类所有的特性。而如果没有按级分类,每类都必须显式地定义它所有的特性

多态(polymorphism)
意思是事物具有不同形式的能力

  • 一个接口,多个实现

三.类的对象及其应用

  • 类:是一组相关的属性和行为的集合
  • 对象:是该类事物的具体体现
    举例:
类   学生
对象  班长就是一个对象
  • 属性:就是该事物的描述信息
  • 行为:就是该事物能够做什么
  • 事物和类的关系:
    事物 类
    属性----------------成员变量
    行为----------------成员方法
  • 定义类就是定义类的成员
    成员变量:和以前定义变量是一样的,位置发生了变化。(在类中,方法外)
    成员方法:和以前定义方法是一样的,只不过去掉static
  • 一个类的标准构成:成员变量 ,构造方法,成员方法。
    类的全限定名:包名+类名 org.westos.demo3.Student

类就相当于一个模板,可以创建多个对象,对象的定义格式如下:
类名 对象名 =new 类名();
举例:

Student wangYun=new Student

在Java语言中,如果要访问类中的属性或方法,则可以依靠下列的语法格式:
访问中的属性:对象.属性;
调用类中的方法:对象.方法;

  • 要使用一个类,必须要对类进行实例化,所谓实例化,就是创建该类对象

  • 然后创建可以使用关键字new

  • 引用数据类型:数组,类

  • 就可以使用对象,调用功能和属性

  • 类必须编写在.java文件中

  • 一个.java文件中,可以存在无数个类,但只能存在一个public修饰的类名完全一致

  • 每个对象都有自己的一份实例变量
    匿名对象

  • 没有名字的对象

  • 每new一次都是新的对象

  • 匿名函数可以调用属性和方法,可以作为参数传递,但是无法在传参之前做其他的操作

  • 当你以后看到一个方法的形参要一个类 类型,你就传一个该类的对象

new Phone();

在Java中一般不这样使用,因为由于对该对象没有进行引用,马上会被内存回收,所以并无意义

public class MyTest {
   
    public static void main(String[] args) {
   
        Phone phone = new Phone();
        String name = phone.name;
        System.out.println(name);
        System.out.println(phone.price);
        phone.call("张三");
        phone.call("李四");
        new Phone(); //一个新对象
        String name1 = new Phone().name; //一个新对象
        double price = new Phone().price; //一个新对象
        System.out.println(name1);
        System.out.println(price)
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值