栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 软件开发 > 后端开发 > Java

Java基础篇——static关键字与继承

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础篇——static关键字与继承


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

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

 

1、static关键字
  •  static 是静态的意思,可以用来修饰成员变量、成员方法
  • static修饰成员变量后称为静态成员变量(类变量)。修饰成员方法后称为静态方法(类方法)
  • static修饰后的成员变量,可以被类的所有对象共享(访问、修改)
1.1成员变量 

​静态成员变量可以用类来访问,也可以通过对象来访问;而非静态成员变量只能通过对象访问

public void User(){
    static String name;
    int age;
}

public void Test{
    public static void main(String[] args){
            System.out.println(User.name);//正确
         // System.out.println(User.age); // 报错
            User user = new User();
            System.out.println(user.age); // 正确
            System.out.println(user.name); // 正确
    }
}
    

 1.2成员方法

        成员方法分为两类:

  1. 静态成员方法(有static修饰,归属于类),建议用类名访问,也可以用对象访问。
  2. 实例成员方法(无static修饰,归属于对象),只能用对象触发访问。

使用场景:

表示对象自己的行为的,且方法中需要访问实例成员的,则该方法必须申明成实例方法。

如果该方法是以执行一个共用功能为目的,则可以申明成静态方法。

 static访问注意事项:

  • 静态方法只能访问静态的成员,不可以直接访问实例成员。
  • 实例方法可以访问静态的成员,也可以访问实例成员。
  • 静态方法中是不可以出现this关键字的。
 2、工具类

        工具类是什么???

        在工具类中都是一些静态方法,每个方法都是以完成一个共用的功能为目的,开发人员通过编写工具类,可以提高代码的复用率,方法的调用也会变得更加方便。         

        为什么工具类中的方法不用实例方法做?

1、实例方法需要通过对象进行调用,而静态方法无需通过对象即可调用。

2、倘若创建一个对象只是为了调用方法,会浪费内存 

        工具类定义时的其他要求:

         由于工具里面都是静态方法,直接用类名即可访问,因此,工具类无需创建对象,建议将工具类的构造器进行私有。

 

 3、代码块

         什么是代码块?

  • 代码块是类的5大成分之一(成员变量、构造器,方法,代码块,内部类),定义在类中方法外。
  • 在Java类下,使用 { } 括起来的代码被称为代码块 。

         代码块分为两种:静态代码块和构造代码块

静态代码块:

  • 格式:static{}
  • 特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发、只执行一次
  • 使用场景:在类加载的时候做一些静态数据初始化的操作,以便后续使用。  

构造代码块(了解):

  • 格式:{}
  • 特点:每次创建对象,调用构造器执行时,都会执行该代码块中的代码,并且在构造器执行前执行
  • 使用场景:初始化实例资源。

 

 4、继承

         什么是继承???继承的好处是什么?

  • 继承就是java允许我们用extends关键字,让一个类和另一个类建立起一种父子关系。
  • 提高代码复用性,减少代码冗余,增强类的功能扩展性。

         继承的格式:

子类 extends 父类

        继承后子类的特点:

  •  子类 继承父类,子类可以得到父类的属性和行为,子类可以使用。
  • Java中子类更强大

        当两个类中拥有一些相同的属性与方法时,我们可以为这两个类创造一个父类,然后讲这两个类中相同的属性与方法放在他们的父类中定义,再将两个子类继承中国父类。 

 

         继承设计规范

子类们相同特征(共性属性,共性方法)放在父类中定义,子类独有的的属性和行为应该定义在子类自己里面。

        如果子类的独有属性、行为定义在父类中,会导致其它子类也会得到这些属性和行为,这不符合面向对象逻辑。

 

继承的特点:

  1. 子类可以继承父类的属性和行为,但是子类不能继承父类的构造器。
  2. Java是单继承模式:一个类只能继承一个直接父类。
  3. Java不支持多继承、但是支持多层继承。
  4. Java中所有的类都是Object类的子类。

子类继承父类后构造器的特点:

 因为子类再初始化的时候,有可能会用到父类中的数据,所以子类中所有的构造器默认都会先访问父类中的无参构造器,在执行自己。(子类构造器第一行语句默认是: super() 不写也存在)

this和super的详情

 

 

转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/1040328.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号