本站消息

站长简介


前每日优鲜python全栈开发工程师,自媒体达人,逗比程序猿,钱少话少特宅,我的公众号:想吃麻辣香锅

  java大神匠心打造,零基础java开发工程师视频教程全套,基础+进阶+项目实战,包含课件和源码

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2021-05(14)

2021-06(37)

面向对象--01--类、属性、方法、static、代码块、抽象类、接口、内部类

发布于2021-06-08 10:15     阅读(1006)     评论(0)     点赞(15)     收藏(5)


0

1

2

3

4

面向过程 (POP ) 与 面向对象 (OOP )

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

类和对象

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

类的成员构成

version 1.0

在这里插入图片描述

version 2.0

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

属性

变量的分类

在这里插入图片描述

引用类型

引用类型是一个对象类型,值是什么呢?它的值是指向内存空间的引用,就是地址,所指向的内存中保存着变量所表示的一个值或一组值。

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

内存位置

在这里插入图片描述

成员变量默认初始化赋值

在这里插入图片描述

属性赋值顺序

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

方法

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

方法的重载 (overload)

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

重写与重载的区别(Overload和Override的区别)

  1. 重载:是指同一个类中的多个方法具有相同的名字,但这些方法具有不同的参数列表,即参数的数量或参数类型不能完全相同
  2. 重写:是存在子父类之间的,子类定义的方法与父类中的方法具有相同的方法名字,相同的参数表和相同的返回类型
  3. 重写是父类与子类之间多态性的一种表现
  4. 重载是一类中多态性的一种表现

重载:Overload

方法名相同,参数列表不同,-------和返回值没有关系,和访问修饰符也没得关系。参数列表同不同,是指参数的类型,个数,顺序。

重写 :Override “两同两小一大”的原则"

两同:方法名相同,参数列表相同
两小
1.返回值如果是引用类型,子类的返回值要比父类的小,或者一样。如果返回值是基本类型,要求一样。
2. 抛出的异常类型,子类的要比父类的小,或者一样。
一大:访问修饰符权限子类的要比父类的大,或者一样。

构造器或(构造方法)

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

static

某些特定的数据在内存空间里只有一份

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

设计思想:

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

内存解析:

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

注意事项:

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

理解 main 方法的语法:

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

public class test02 {
    public static void main(String[] args) throws Exception {

        for(int i=0 ;i<args.length;i++){
            System.out.println("args: "+i+args[i]);
        }

    }
}

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

代码块

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

抽象类

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

接口

  • Java里面由于不允许多重继承,所以如果要实现多个类的功能,则可以通过实现多个接口来实现。
  • Java接口和Java抽象类代表的就是抽象类型,就是我们需要提出的抽象层的具体表现。OOP面向对象的编程,如果要提高程序的复用率,增加程序的可维护性,可扩展性,就必须是面向接口的编程,面向抽象的编程,正确地使用接口、抽象类这些太有用的抽象类型做为java结构层次上的顶层。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

构造方法

  • 接口里是没有构造方法的
  • 在创建实现类的对象时默认的super(),是调用的默认Object的无参构造。

成员变量

  • 接口里没有成员变量,都是常量
  • 所以,你定义一个变量没有写修饰符时,默认会加上:public static final

成员方法

  • 接口里的方法,默认就都是抽象的
  • 如果你不写明是abstract的,那会自动补齐。例如:public abstract vo save

接口和抽象类 之间对比:

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

另外:

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

内部类

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

举例:

在这里插入图片描述

public class Outer {
    private int s = 111;

    public class Inner {

        private int s = 222;

        public void mb(int s) {
            System.out.println(s);
            System.out.println(this.s);
            System.out.println(Outer.this.s);
        }
    }


    public static void main(String[] args) {
        Outer a = new Outer();
        Outer.Inner b = a.new Inner();

        b.mb(333);
    }
}

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


站长简介:前每日优鲜python全栈开发工程师,自媒体达人,逗比程序猿,钱少话少特宅,关注我,做朋友, 我们一起谈人生和理想吧!我的公众号:想吃麻辣香锅

关注公众号回复java,免费领取 免费领取java大神匠心打造,零基础java开发工程师视频教程全套,基础+进阶+项目实战,包含课件和源码

关注公众号回复java充值+你的账号,免费为您充值1000积分

0

1

2

3

4

5

6

7

8

9



所属网站分类: 技术文章 > 博客

作者:我是不是很美

链接:http://www.javaheidong.com/blog/article/219201/af05214dede71bade6a8/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

15 0
收藏该文
已收藏

评论内容:(最多支持255个字符)