类中可以有几种东西:属性,方法,构造器,初始化块



new创建对象时,

1.类属性和类初始化块分配空间。

2.执行默认初始化

如有父类,先为父类执行父类自己的1和2步骤,再执行上面的1和2。

一个类执行new多个对象,类属性和类初始化块只初始化一次。





private:属性和方法只能在该类内访问

default:同一个包的其他类可以访问

protected:同一个包的其他类可以访问;不同包的子类也可以访问

public:都行





子类继承父类,除private外,其他都有。



子类改变继承过来的方法时,叫重写。

重写后父类的这个方法便被隐藏了。

如果要调用这个隐藏的方法:

1.子类强制转换为父类

2.通过super





构造器中的this表示当前正在初始化的对象引用。

方法中的this表示当前正在调用此方法的对象引用。

super()和this()不可以同时出现在构造函数中,并且一定要写在第一行。

final类 不能被继承

final方法 不能被重写,但如果父类的final方法为private,子类中的final这个方法,就相当于一个新的方法。

final变量(包括包括类属性、对象属性、局部变量和形参) 需要进行显示初始化,并且之后不能修改。



native方法  不是java语言实现的,而是操作系统提供的动态库。



equals  表示对象内容(特征和属性)相同,不能作用于基本数据类型

==      变量值相同 两个new出来的对象,有不同的hash,所以用这个就会false,但equals是ture





wait             当前线程等待,直到其他线程调用此方法的主调的notify或notifyAll,可指定超时时间

notify/notifyAll 唤醒此对象监视器上等待的单个或全部线程。

wait/notify/notifyAll  方法只能在同步代码(synchronized)块中才能使用





String是不可变字符串对象,s="abcd";s="fde";后"abcd"和"fde"会一直在堆内存里。

StringBuffer线程安全

StringBuilder非线程安全



intern  查找常量池中的对象引用,如果没有,则创建





Strong reference  任何引用=null时,回收内存

Soft Reference    引用1=null,引用2!=null,不回收内存

Weak Reference    引用1=null,弱引用2可能不是null

java基本知识归集的更多相关文章

  1. Java基础知识(壹)

    写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...

  2. java基础知识小总结【转】

    java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...

  3. Java基础知识系列——String

    最近晚上没有什么事(主要是不加班有单身),就复习了一下Java的基础知识.我复习Java基础知识主要是依据Java API和The Java™ Tutorials. 今天是第一篇,复习了一下Strin ...

  4. 学习Spring必学的Java基础知识

    [1] Java反射知识-->Spring IoC :http://www.iteye.com/topic/1123081 [2] Java动态代理-->Spring AOP :http: ...

  5. 学习android学习必备的java基础知识--四大内部类

    学习android必备的java基础知识--四大内部类 今天学习android课程,因为我的主专业是JAVA,但是兴趣班却有这其他专业的同学,学习android 需要具备一些java的基础知识,因此就 ...

  6. JAVA基础知识之网络编程——-网络基础(Java的http get和post请求,多线程下载)

    本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web ...

  7. java基础知识梳理

    java基础知识梳理 1 基本数据类型

  8. java基础知识回顾之---java String final类普通方法

    辞职了,最近一段时间在找工作,把在大二的时候学习java基础知识回顾下,拿出来跟大家分享,如果有问题,欢迎大家的指正. /*     * 按照面向对象的思想对字符串进行功能分类.     *      ...

  9. java基础理论知识的一些总结

    在学习Java初期,由于我们是刚开始接触Java,我们不仅需要牢牢掌握Java的基础理论知识,来为我们后面对Java更深层次的学习打好基础,而且我们需要养成编程人的思想习惯.来我们一起来探索Java基 ...

随机推荐

  1. 运行VUE的前端项目

    前提条件:已经安装nodejs和cnpm ,参考前一篇文章 1.在前端项目所在的目录下执行cnpm install 下载该项目需要的包,这些包和全局配置下的包可能不同的版本cnpm会根据package ...

  2. Java 中位移运算符 >>,>>>,<<

    Java 中的三种位移运算符 java中有三种移位运算符 <<      :     左移运算符,num << 1,相当于num乘以2 >>      :     ...

  3. django1.10使用本地静态文件

    django1.10使用本地静态文件方法 本文介绍的静态文件使用,是指启动web站点后,访问静态资源的用法,实际静态资源地址就是一个个的url 如果没有启动web站点,只是本地调试html页面,那直接 ...

  4. javac编译带包的java文件需要在命令处加参数

    不带包:javac aaa.java 带包:javac -d . aaa.java 带包就是 java文件中含有 package com.aaa;

  5. pta7-20 畅通工程之局部最小花费问题(Kruskal算法)

    题目链接:https://pintia.cn/problem-sets/15/problems/897 题意:给出n个城镇,然后给出n×(n-1)/2条边,即每两个城镇之间的边,包含起始点,终点,修建 ...

  6. 并查集和树的一些性质 hdu1325

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1325 题意是每次输入一对数字n,m表示一条树边,并且n是m的父亲,直到n==0&&m= ...

  7. HDU-1069.MonkeyandBanana(LIS)

    本题大意:给出n个长方体,每种长方体不限量,让你求出如何摆放长方体使得最后得到的总高最大,摆设要求为,底层的长严格大于下层的长,底层的宽严格大于下层的宽. 本题思路:一开始没有啥思路...首先应该想到 ...

  8. shape 图形

    主要属性: <?xml version="1.0"encoding="utf-8"?><shape > <corners /> ...

  9. 控制台输出到txt

    //PrintStream 为其他输出流添加了功能,使它们能够方便地打印各种数据值表示形式. //PrintStream不同于PrintWriter,PrintStream输出的是字节内容. //pu ...

  10. 在IDEA中使用gradle配置打可执行jar包[可执行jar与其所依赖的jar分离]

    下面是我的项目的build.gradle文件的所有内容,注意高亮部分是关键: group 'com.xbs' version '1.0-SNAPSHOT' apply plugin: 'java' a ...