zoukankan      html  css  js  c++  java
  • OOP

    为什么要有包名:解决类名冲突的问题;

    重写:子类的方法名和参数列表于父类的方法相同,但方法的实现不同;当子类对象的重写方法被调用时

    无论通过父类的引用还是子类的引用来调用,运行的是子类的重写后的版本;

     

    重载和重写的区别:

      1.重载是指在一个类中定义多个方法名相同但参数列表不同的方法,在编译时根据参数的个数和类型来决定绑定哪个方法;

      2.重写是指在子类中定义和父类完全相同的方法,在程序运行时,根据对象的类型不同(不是引用类型)而调用不同的版本;


    局部变量:

      1.定义在方法中;

      2.方法被调用时,存在栈中,方法调用结束从栈中清除。

      3.没有默认值必须自行设定初始值

    成员变量:

      1.定义在类中,方法外;

      2.类被实例化后,存在堆中,对象被回收时,成员变量失效。

      3.有默认初始值,可以不显示初始化;

    JVM:的作用:为java程序提供并管理所需要的内存空间;JVM内存分为 堆,栈,方法区,分别用于存储不同的数据;

    堆:用来放new关键字所创建的对象;当一个对象没有任何引用时视为被放弃的对象,用System.gc();回收

    栈:用于存放方法中的所有局部变量,即引用变量

    方法区:类的各种信息(包括方法)都在方法区中存储;

    继承:

    子类继承父类,当父类只有有参构造,没无参构造时候,在子类的构造方法中必须在第一行调用super()来调用父类的内容;

    访问控制修饰符 =================================================

     ==============================================static、final

    static变量是属于类的变量可以通过类名来引用,存在方法区中,不属于对象的数据结构

    final 关键字修饰成员变量,意为不可改变。(也可以修饰局部变量,使用 );

    final关键字修饰的方法不能被重写(意义:防止子类在定义方法时候造成不经意的重写);

    final关键字修饰的类不能被继承:例如String.Math  Integer  Double等基础类不能被继承。

  • 相关阅读:
    python装饰器执行机制
    蓝桥网试题 java 基础练习 十进制转十六进制
    蓝桥网试题 java 基础练习 十六进制转十进制
    蓝桥网试题 java 基础练习 十六进制转八进制
    蓝桥网试题 java 基础练习 数列排序
    蓝桥网试题 java 入门训练 A+B问题
    蓝桥网试题 java 入门训练 序列求和
    蓝桥网试题 java 入门训练 圆的面积
    蓝桥网试题 java 入门训练 Fibonacci数列
    贪心算法
  • 原文地址:https://www.cnblogs.com/21heshang/p/6000646.html
Copyright © 2011-2022 走看看