• Java-------->>类与对象


    Java--------->类与对象

      (一)重要知识点

      Static用法:

        1,static 作用于方法时:该方法属于类方法,无需本类的对象即可调用此方法(可以直接通过类来调用),局限性:只能调用static 方法和数据,且不能以任何方式引用this和super关键字。

        2,static作用于变量:相当于全局变量,static以最后一个调用为准(可统计方法被执行的次数),static{}这类静态块优先执行,不论顺序,静态变量只会需要要初始化一次,即未其分配好了内存,而如果普通的全局变量每调用该类,都会被执行一次。

        3,static作用于类时:即内部静态类,可以直接做为普通类来new 出来   详细见这里

      This用法:

        1,调用本类中的属性;2,调用本类中的其他方法(静态方法不能)3,返回对象的值(如:return this)

      参数的传递

        传递方式:值传递(实参传入给形参),而非对象传递,在传递的参数区分好是基本类型(传值)还是引用类型(形参为地址值)

        传递多个同类型的参数 如test(int i ,String ...books)

      Super方法:调用父类的方法,如super.成员变量,super(方法参数)

      Final关键字:

         1,final修饰基本类型和引用类型区别:基本类型:值不变,引用类型:引用地址不变,对象内容可以改变。

        2,final修饰的方法不能被重写

        3,final修饰的类不能有子类

      方法的重载:方法名相同和参数列表不同,与返回类型等无关

      方法的重写:两同两小一大

        1,方法名相同,参数列表相同

        2,方法返回类型小于或等于父类,子类抛出的异常小于等于父类

        3,方法访问权限大于等于父类

      变量说明:

        

      访问权限:

       包的分类:

        

      ==与equal一些易忘点:

        1,对于基本类型变量,只要两个变量都是数值类型且值相等,则==成立如(3==3.0F)true;和(65=='A’)true,对于对象,要求引用类型指向同一个对象,则返回True

        2,字符串常量池,如String a="23";String b="2",String c="3";String d=b+c; a==d false;a=b+"3" false;//因为在编译时无法确定(在赋值时不能直接识别类型。)

      抽象类和抽象方法的特点:

        1,抽象类和抽象方法必须用Abstract修饰,且抽象方法没方法体,如public abstract String test();即可无括号

        2,抽象类无法被实例化(即new)

        3,抽象类中可以包含成员变量,方法体(抽象方法和普通方法),构造器,初始化块,内部类(接口,枚举)

        4,含有抽象方法的类只能定义为抽象类

      接口:

        1,抽象类中可以包含成员变量,方法体(抽象方法和默认方法(default),类方法(static)(Java8允许的)),内部类(public static修饰)

        2,成员变量默认public static final ;方法默认是public abstract

        3,接口支持多继承,

      内部类:

        1,内部类有(private,protected,static)三个权限访问,内部能访问外部变量,而外部不能直接访问内部成员(可以借用对象)。

        2,非静态内部类不能含有静态变量,方法,初始块

        3,静态内部类:静态类不能访问实例成员(即非静态)

        4,局部内部类:声明在方法中,不能设置static和访问权限,

        5,匿名类:1,不能为抽象类;2,不能定义构造方法(匿名类没有类名);

      枚举类与普通类区别:

      

       垃圾回收机制:

        其中堆内存对象的三种状态转换:

      Jar文件常用命令:

        1,创建jar:jar cvf hello.jar hello//c:创建  f:文件信息  v:详细过程报告

        2,解压jar:jar xvf hello.jar //x:解压

        3,往jar中添加文件:jar uf hello.jar HelloWorld.java //u:添加

        4,显示jar内容:jar tvf hello.jar 

  • 相关阅读:
    随便写写
    mysql 快速插入100完毕 40秒
    存储过程 插入表数据 循环
    打开地图拖动位置获取经纬度 给父窗口传值
    Go源码共读计划
    源码读起来,Go源码共读计划
    清除centos所有命令记录
    删除django后台最近一个动作提示。
    自动延期pycharm插件,非常好用.
    pycharm中使用solidity插件 ,编写solidity以及在pycharm内进行编译。
  • 原文地址:https://www.cnblogs.com/xieyulin/p/7061215.html
Copyright © 2020-2023  润新知