实例变量经常被称为属性

  成员变量和局部变量:前者在类中定义,后者在类的方法中定义且系统不会自动赋初始值

  我们创建一个对象的时候实际上执行的是无参的构造方法

  静态变量 static String arr;

  静态方法:在静态方法中不能直接调用非静态变量,只能直接调用静态变量,如果要调用静态变量

  则必须创建类的对象然后再通过类的对象来访问非静态变量

  同理,在静态方法中也不能直接访问非静态方法,要通过创建类的对象然后通过对象名.方法名来实现访问非静态方法

  但是在非静态方法中则既可以访问非静态变量和非静态方法也可以访问静态变量和静态方法

  public static void main(String args【】)就是一个静态方法

  程序运行时静态初始化块最先被执行,然后执行普通初始化块,最后才执行构造方法。由于静态初始化块只在类加载时执行一次,所以当再次创建对象 hello2 时并未执行静态初始化块。

  this关键字代表当前的对象,this在封装对象的属性的时候经常会用到

  this.方法即代表调用当前对象的某个方法

  内部类的使用

  生成一个新的内部类对象的时候格式必须要注意 内部类 对象名 = 外部类对象.new 内部类( );

  1.先生成一个外部类的对象 Outer outer = new Outer();

  2.使用外部类对象.内部类来生成一个新的内部类对象 Inner inner = outer.new Inner();

  继承是一个很强大的性质,子类继承了父类,就直接拥有的父类的所有成员变量和方法

  private 型的属性和方法是不能被继承的

  java中继承的初始化顺序是:

  先进行父类对象的属性初始化再进行父类构造方法初始化

  接着进行子类属性的初始化,最后进行子类构造方法初始化

  final关键字很强势

  final修饰类,则该类不允许被继承

  final修饰方法,则该方法不允许被重写覆盖

  final修饰属性,则该属性必须进行初始化且不能被修改

  子类构造的过程当中必须调用其父类的构造方法

  若子类的构造方法中没有显式的调用父类的构造方法,则系统会默认调用父类的无参构造方法

  若想要显式的调用父类的构造方法则必须在子类构造方法的第一行

  *如果子类中没有显式的调用父类的构造方法而父类又没有无参的构造方法,则会出bug

  Object类是java中所有类的老祖宗

  没有标注继承自其他类的所有类都默认继承自Object类

  在java中直接输出一个对象,得到的是该对象在内存中的哈希码(对象地址字符串)

  Object类中的equals()方法

  功能:比较对象的引用是否指向同一块内存的地址

  多态

  1.引用多态

  父类的引用可以指向本类的对象

  父类的引用也可以指向子类的对象(向上转型)

  2.方法多态

  创建本类对象时,调用的方法为本类方法

  创建子类对象时,调用的方法为子类重写的方法或者是继承的方法

  不能用父类的引用调用子类中独有而父类中没有的特殊方法

  在进行强制类型转化的时候(向下转型)

  最好使用instanceof关键字进行验证,避免尴尬

  抽象类:不关注子类的实现,但是会约束子类的实现行为

  抽象类中的方法没有方法体,所以结束的时候以分号;来表示

  java中在创建一个接口的时候,命名过程中最好在名称之前加上一个I

  接口中方法不能有方法体,同时方法的访问修饰符不能是 private 和 protected

Java入门:零碎的知识点的更多相关文章

  1. Java入门第一章知识点总结

    -d是directory 目录的意思 cls:清楚doc里面的内容 ipconfig:显示网络配置信息 java -version:检查安装的jdk版本信息 是类型自动向上转换.  在输出时,根据当前 ...

  2. Java入门学习知识点汇总

    Java入门重要知识点在这里总结一下,以方便日后复习,这部分内容主要有:变量和常量,常用的运算符,流程控制语句,数组,方法这些内容 一.变量和常量 1.Java关键字 先贴张图: 所有关键字区分大小写 ...

  3. Java入门知识点

    Java入门知识点   Java源代码的流程 Java程序由.java文件生成,通过JVM进行编译得到字节文件.class class HelloWorld { public static void ...

  4. Java入门基础知识点总结(详细篇)

    Java入门基础知识点总结(详细篇)~~~~~目录 1.1 图解 1.1.1 Java基础知识点 1.1.2 Java基础语法的相关内容 1.2 关键字 1.3 标识符 1.3.1 标识符概念 1.3 ...

  5. 第1章Java入门体验

    第1章Java入门体验 1.java简介和平台应用 Java是sun公司开发出来,现在属于ORACLE公司java分为几个部分:首先是最基础的Java SE部分,这部分是Java的基础知识,主要包括: ...

  6. Java入门-浅析Java学习从入门到精通【转】

    一. JDK (Java Development Kit)  JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库 ...

  7. Java入门篇(六)——类和对象

    写到这里终于写到了入门篇的最后一个知识点了.类和对象是Java中经常被提到的两个词汇,实际上可以将类看作对象的载体,它定义了对象所具有的功能.Java是面向对象的语言,因此掌握类与对象是学习Java语 ...

  8. 打字母的游戏&Java入门

    目标: 在一个窗体上随机掉落字母,通过键盘输入,敲对后消除并且累计积分,否则扣除一定积分. 具体内容: 画一个窗体——>产生随机字母——>接受键盘输入——>显示分数 代码: pack ...

  9. 零基础怎么学Java?Java的运行机制是什么?Java入门基础!

    Java语言是当前流行的一种程序设计语言,因其安全性.平台无关性.性能优异等特点,受到广大编程爱好者的喜爱. 想学习Java语言的同学对于Java的运行机制是必须要了解的!! 计算机高级语言的类型主要 ...

  10. 三、Java入门

    Java入门 Java的特性和优势 特性 ​ 简单 ​ 面对对象 ​ 可移植性 优势 ​ 性能高 ​ 分布式(跨平台:Write Once .Run Anywhere) ​ 动态性(反射) ​ 多线程 ...

随机推荐

  1. AnsiString和各种数据类型间相互转换 [数据转换]

    //Ansistring 转 char void __fastcall TForm1::Button1Click(TObject *Sender) { AnsiString Test = " ...

  2. UVM中Callback机制

    Callback机制,其实是使用OOP来实现的一种程序开发者向程序使用者提供的模块内部的接口.可以在Test_case的高度改变其他component的一些行为. Systemverilog中已经提供 ...

  3. http://xx.xxx.xxx.xx:8080/把路径设置成http服务访问的形式

    1.官网下载python安装包(eg:python-3.6.3-embed-win32),并解压文件 2.配置环境变量 3.cmd里查看python版本并设置服务路径 4. 访问查看

  4. Python: 列表推导式--轻量级循环

    定义: 列表推导式(list comprehension)是利用其他列表创建新列表的一种方法,其工作方式类似于for循环,对列表进行过滤变种操作 eg1: >>> [x*x for ...

  5. 如何在Linux环境下通过uwgsi部署Python服务

    部署python程序时常常会遇到同一台服务器上2.x和3.x共存的情况,不同应用需要使用不用的python版本,使用virtualenv创建虚拟环境能很好地解决这一问题. 首先,需要在服务器上安装vi ...

  6. web前端----jQuery操作标签

    样式操作 样式类 addClass();// 添加指定的CSS类名. removeClass();// 移除指定的CSS类名. hasClass();// 判断样式存不存在 toggleClass() ...

  7. gcc5.2版本安装详解

    gcc5.2版本安装详解 1.下载gcc-5.2安装包 gcc各版本浏览地址:http://ftp.gnu.org/gnu/gcc/gcc-5.2浏览地址:http://ftp.gnu.org/gnu ...

  8. Android实践项目汇报(总结)-修改

    天气客户端开发报告 1系统需求分析 1.1功能性需求分析 天气预报客户端,最基本就是为用户提供准确的天气预报信息.天气查询结果有两种:一种是当天天气信息,信息结果比较详细,除温度.天气状况外还可以提示 ...

  9. Python3基础 os.path.getsize 获得文件的大小

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  10. P1349 广义斐波那契数列(矩阵加速)

    P1349 广义斐波那契数列 题目描述 广义的斐波那契数列是指形如an=pan-1+qan-2的数列.今给定数列的两系数p和q,以及数列的最前两项a1和a2,另给出两个整数n和m,试求数列的第n项an ...