【Java基础】
记录自己学习java基础时候的笔记
洞鉴
一起洞鉴,一起透彻了解
展开
-
卑微内部类,在线自夸(非静态、静态、局部、匿名)
什么是内部类将一个类的定义放在另一个类的定义内部(嵌套类),这就是内部类。内部类有什么用内部类允许你将一些逻辑相关的类组织在一起,内部类了解外部类...原创 2020-03-19 16:44:48 · 99 阅读 · 0 评论 -
抽象类(abstract)与接口(interface)
什么是抽象类与接口抽象类包含一个或多个抽象方法的类叫做抽象类,抽象类可以有具体的方法与变量。如果想要继承一个抽象类,且想要创建子类对象,那么子类必须实现抽象类中的具体方法。如若不提供实现,那么子类也是一个抽象类。接口接口比抽象类还要抽象,接口产生一个完全抽象的类,不提供任何具体实现。抽象类为子类提供模板,子类必须实现相关的抽象类...原创 2020-03-17 21:22:51 · 145 阅读 · 0 评论 -
初始化顺序
三个原则:1、变量先于方法2、静态先于非静态(构造器是静态方法)3、父类先于子类。(new子类对象时会先产生一个父类对象,它被包装在子类对象内部。这也是子类能够使用父类方法的原因)。补充:静态初始化只有在必要时候才会进行,要是不创建对象,也不调用static变量,那么static变量就不会被创建。不妨来做做下面这个例子,用笔写写输出了什么哟~---------...原创 2020-03-17 11:00:20 · 235 阅读 · 0 评论 -
final
什么是final final意思是最终的、不可更改的,也就是说这个关键字所修饰的变量、方法、类都是不可修改的。为什么要有final 有时候我们需要一个永不改变的编译时常量(比如说Π:3.1415)或者一个在运行时被初始化后就不希望再改变的值。怎么用final 常用情况: final可以修饰变量、方法和类...原创 2020-03-17 10:49:32 · 129 阅读 · 0 评论 -
访问修饰符:public、protected、包访问权限(无关键词/default)和private
什么是访问权限控制 访问权限控制就是开发人员(比如写java的底层实现的人)向客户端程序员(使用java的人)指明哪些是可用的,哪些是不可用的,以控制访问权限。访问权限分为4个等级:public、protected、包访问权限(无关键词/default)和private为什么要有访问权限控制 初期,我们在写代码的时候,更加注意的是能不能实现这个功能。时间长了...原创 2020-03-16 21:14:32 · 1064 阅读 · 0 评论 -
多线程总结,九大知识点!
学习多线程基础,这一篇就够啦!(一):https://blog.csdn.net/weixin_43827227/article/details/96606212学习多线程基础,这一篇就够啦!(二):https://blog.csdn.net/weixin_43827227/article/details/96982701多线程总结:1,进程和线程的概念。|--...原创 2019-07-23 16:32:21 · 107 阅读 · 0 评论 -
九大基本数据类型及其对象包装类
概念:为了方便操作基本数据类型值,将其封装成了对象,在对象中定义了属性和行为丰富了该数据的操作。用于描述该对象的类就称为基本数据类型对象包装类,主要用基本类型和字符串之间的转换。 byte--->Byte short---> Short int--->Integer long--->Long ...原创 2019-07-31 20:34:03 · 353 阅读 · 0 评论 -
继承
目录继承extends覆盖方法Overridesuper和this子类实例初始化过程继承extends继承就是通过扩展一个类来建立另外一个类的过程。extends:表明正在构造的新类派生于一个已存在的类。(父亲对儿子开放的东西,儿子就算自己没有也能用,这就是继承。)子类拥有比父类更加丰富的功能,是因为子类会自动继承超类的方法和域。public cl...原创 2019-08-18 11:58:40 · 274 阅读 · 0 评论 -
什么是面向对象、面向过程与面向对象的区别
要讲区别,首先我们得先来弄弄清楚什么是面向过程,什么是面向对象。面向过程是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。比如把大象放进冰箱,第一步需要先打开冰箱,第二步把大象放进去,第三步把冰箱关上,这样就完成了把大象放进冰箱这件事情。这就是面向过程。面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而...原创 2019-09-25 13:24:14 · 1357 阅读 · 0 评论 -
常见API——String类的常用方法
public class TestString { public static void main(String[] args) { //字符串常量会被放入常量池中 String string="abc"; String string2=new String("def"); String string3="abd"+"dedsd"; String string4="18"+...原创 2019-07-23 21:05:57 · 423 阅读 · 0 评论 -
StringBuffer和StringBuilder的功能特点与区别(基础版)
目录特点功能区别当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类(用于存储数据的容器)。和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。由于 StringBuilder 相较于 StringBuffer 有速度优势,所以多数情况下建议使...原创 2019-07-24 17:42:51 · 735 阅读 · 0 评论 -
集合框架Map与Collection: List、Set
目录集合类的由来:集合特点:框架的顶层Collection接口:Collection的常见方法:1,添加。2,删除。3,判断:4,获取:List:特有的常见方法:有一个共性特点就是都可以操作角标。1,添加2,删除3,修改4,获取5,ListIterator接口6.List的常用子类Set:元素不可以重复,是无序。Map1,添...原创 2019-08-01 23:34:57 · 351 阅读 · 0 评论 -
java中什么是类?什么是对象?
对象我们常说,一切皆对象,为什么呢?在计算机科学中,对象(英语:object)是一个存储器地址,其中拥有值,这个地址可能有标识符指向此处。对象可以是一个变量,一个数据结构,或是一个函数。是面向对象(Object Oriented)中的术语,既表示客观世界问题空间(Namespace)中的某个具体的事物,又表示软件系统解空间中的基本元素。在java中,对象就是用来描述客观事物的一个实...原创 2019-08-18 16:13:25 · 633 阅读 · 0 评论 -
内存分析--栈、堆、方法区
目录栈(stack)堆(heap)方法区(method area)栈(stack)0、自动分配连续空间1、栈描述的是方法执行的内存模型。每个方法被调用都会创建一个栈帧(存储局部变量、操作数、方法出口等)2、JVM会为每个线程创建一个栈,用于存放该线的执行方法的信息(实际参数、局部变量等)3、栈属于线程私有,不能实现线程间的共享4、栈的存储特性:先进后出,后进先出...原创 2019-08-18 16:28:35 · 249 阅读 · 0 评论 -
重载(overload)与重写(override)一句话道清区别,再也不弄混
先一句话讲清区别:重载是重新加载,是方法名相同而方法参数不同,多用于构造器;重写又称覆写,是覆盖掉父类的方法,重新编写子类对父类的允许访问的方法的实现过程。再仔细讲讲这两个东西复习一下重载(overload)重载是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。重载多用于构造器中方法的重载:相同的方法名,不同的功能——>形参不一样(形参类型,...原创 2019-08-19 18:56:25 · 370 阅读 · 0 评论 -
什么是多态
目录什么是多态多态的特点多态存在的三个必要条件多态时成员变量、静态方法和非静态方法的特点什么是多态多态就是一个对象变量可以指向多种实际类型的现象,同一个事件发生在不同的对象上会产生不同的结果。多态的特点好处:消除类型之间的耦合关系弊端:不能用子类方法,可用转型的方法解决转型:·向上转型:【自动】父类 父类对象 = 子类实例;Fu f...原创 2019-08-20 20:45:31 · 10733 阅读 · 2 评论 -
学习多线程基础,这一篇就够啦!(一)
目录第一部分:基本概念第二部分:如何创建一个线程创建线程方式一:继承Thread类。创建线程方式二:实现Runnable接口。例子:四个窗口一起共卖100张票(有待改进版)第三部分:线程的安全问题例子:线程安全问题产生的原因:线程安全问题解决思路:单例模式涉及的多线程问题第一部分:基本概念要明白什么是线程,先要明白什么是进程。进程:简单...原创 2019-07-20 17:10:31 · 311 阅读 · 0 评论 -
学习多线程基础,这一篇就够啦!(二)
目录第四部分:线程之间的通信等待唤醒机制例子:多生产者多消费者问题优化: 新特性Lock,Conditionwait 和 sleep 区别?停止线程守护线程学习多线程基础,这一篇就够啦!(一):https://blog.csdn.net/weixin_43827227/article/details/96606212第四部分:线程之间的通信概念:多个线程在处...原创 2019-07-23 16:25:57 · 120 阅读 · 0 评论 -
异常
目录异常异常体系Throwable特点:可抛性throws 和throw的区别ErrorIOException(未检查异常)RuntimeException (运行时异常)自定义异常异常处理的原则:异常的注意事项:异常异常:在运行时期发生的不正常情况。 例:角标越界。空指针等在java中通过面向对象的思想用类的形式对不正常情况进行...原创 2019-08-17 14:20:17 · 105 阅读 · 0 评论 -
JAVA泛型是什么!
目录泛型为什么要用泛型泛型的好处什么时候用泛型怎么用泛型泛型类泛型方法泛型接口类型变量的限定类型擦除泛型泛型,即广泛的类型,泛型很像C++里的模板,记住广泛的类型和模板和参数化这三个词,我们一起往下看看。为什么要用泛型有一天,JV我给int类型的数据写了一个非常完美的函数,刚得意洋洋地打算歇会。char不高兴了,说它也要一个...原创 2019-08-03 18:14:58 · 505 阅读 · 0 评论 -
static
目录static(静态修饰符)是什么 Static有什么用Static用在哪、什么时候用1,静态变量 2,静态函数3.静态代码块成员变量和静态变量(static修饰的成员变量)的区别finalstatic(静态修饰符)是什么 static是一个静态修饰符,可以修饰变量、方法、代码块...原创 2019-08-18 16:01:59 · 130 阅读 · 0 评论
分享