![](https://img-blog.csdnimg.cn/20200801101911515.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
JAVA
java知识点总结
hello!world!
JAVA初学者
展开
-
Java常用类与常用方法
一.Object类二.Scanner类java.util.Sanner:Scanner是简单文本扫描器,用于从文本获取数据;我们常用的是从键盘获取数据;常用方法:Scanner(InputStream source)构造方法之一,用来从键盘输入数据,其形参通常用System.in返回;public static final InputStream inSystem类中的一个字段,表示标准输入流,其返回结果是一个InputStream 类型的数据;hasNextXxx()public b原创 2020-08-17 11:06:04 · 1014 阅读 · 1 评论 -
线程安全
在多线程中,线程的执行是按照时间片划分的,从而线程的执行顺序具有随机性.当多个线程去访问共享的数据时,可能得到的结果和预期的结果不一致,产生线程安全问题.我们不能在提高系统效率的同时而忽略线程的安全问题,或者说,我们应该在保证线程安全的情况下,尽量的提升系统的效率.一. 线程安全的判断我们要判断一个程序是否是线程安全的,只需要看3个条件:是不是多线程是否存在共享资源是否存在有多个线程同时访问共享资源如果上述三个条件都存在,那么这个程序就存在线程安全的问题二. 如何保证线程安全保证线程安全原创 2020-08-15 18:27:11 · 1260 阅读 · 0 评论 -
初学JAVA多线程
一. 线程的概念二. 线程的六种状态三. Thread类四. 多线程的实现方式一. 线程的概念线程是操作系统进行资源调度的最小单位,一个进程中包含多个线程,而这多个线程之间有些可以并发执行,提高效率.在JAVA中,线程是和主线程main()并发执行的一条路径,而这条路径实际上可以完成多个任务.所有的线程创建方式实际上都是依靠Thread类去创建的.二. 线程的状态JAVA中的线程一共有六种状态,在Thread类中的State:NEW 新建 线程刚刚创建,还没有启动RUNNABLE可运原创 2020-08-15 16:09:28 · 766 阅读 · 1 评论 -
Object类与常用方法
java语言中所有的类都默认继承于Object类,俗称上帝类;常用方法:getClass() :public final Class<?> getClass()返回此对象运行时类的 Class 对象。即当前正在运行的类的class字节文件对象;如:在一个学生类中使用getClass()方法:package gwew;public class Student { public static void main(String[] args) { Student student原创 2020-08-06 20:48:41 · 123 阅读 · 0 评论 -
常用类之String,StringBuffer与StringBuilder
一.String,StringBuffer与StringBuilder的区别1.长度能否改变String 是一个字符串常量,一旦赋值,其值不能更改;StringBuffer与StringBuilder是可以改变长度的字符序列.也称缓冲池当为String变量赋值一个字符串常量时,首先在常量池中寻找是否有存在此变量,如果存在,将其地址赋值给变量;如果不存在,在常量池中开辟一个空间,将字符串常量复制进去,将其地址赋值于变量;而常量的地址值是不能再改变的,只能等没有变量指向它时,被垃圾回收器回收.2.原创 2020-08-06 20:46:39 · 270 阅读 · 0 评论 -
内部类
内部类是定义在类中的类,分为成员内部类,局部内部类,静态内部类 和匿名内部类1.成员内部类成员内部类定义在类中的成员位置;成员内部类中的对象可以随心所欲的访问外部类的成员;成员内部类中的变量名如果和外部类中的变量名相同的话,会发生隐藏现象;this.变量名 访问的是内部类的变量; 外部类名.this.变量名; 访问的是外部类的成员变量;外部类的方法要访问内部类的成员时,需要创建对象,用对象去访问.Inner i=new Inner();在其他类去创建成员内部类对象时,需要提前创建一个.原创 2020-08-01 14:22:16 · 135 阅读 · 0 评论 -
抽象类与接口的联系与区别
一.抽象类抽象类是用abstract修饰的类,在抽象类中可以拥有抽象方法和普通方法,也可以只有普通方法但是没有意义.当我们抽取事物的共性组成父类时,如果在父类中并不能够具体的实现某个方法时.可以将这个方法定义为抽象方法,这个类为抽象类.二.接口接口是用interface修饰的, 用来扩充具体类的功能.三.抽象类与接口的区别1.成员不同:构造方法:接口中没有构造方法,抽象类有构造方法但是不能直接创建对象成员方法:接口中成员方法默认添加 public abstract 修饰,只能存在抽原创 2020-08-01 11:02:25 · 459 阅读 · 0 评论 -
方法重载与方法重写的区别
1.位置不同方法重载(overload)是在同一个类中,几个方法具有相同的方法名和不同的参数列表.参数列表不同包括参数类型不同,参数数量不同,参数顺序不同.方法重写是在继承关系中,子类重写父类的方法.重写方法时要求子类方法的返回值类型,方法名,参数列表完全相同2.访问时选择条件不同在调用重载方法时,会根据参数列表,去匹配相应的方法去执行,如果没有找到合适的会报错;在调用重写的方法时,会优先访问子类重写后的方法....原创 2020-07-30 21:30:58 · 255 阅读 · 0 评论 -
关键字 ststic final
一.static 静态修饰符使用范围:static只能用来修饰成员变量和成员方法.static不能修饰类,因为被static修饰的东西与类相关,随着类的加载而加载.static不能修饰局部变量,局部变量是在栈中存在的,随着方法的结束而结束.访问方式:被static 修饰的方法或变量优先使用 类名.变量名(方法名) 访问static修饰的成员变量,是静态变量,随着类的加载而加载,优先于对象存在.所有类的对象共享一个静态变量.static修饰的成员方法是静态方法:静态方法中只可原创 2020-07-30 17:38:36 · 178 阅读 · 0 评论 -
代码块与继承中的构造方法的执行顺序
一.代码块代码块是{}包围的代码语句,用来限制变量的生命周期.1.静态代码块加了static修饰符的代码块,定义在类中,方法外静态代码块随着类的加载而运行,并且只能运行一次.2.构造代码块在方法外,类里面的代码块,在构造方法运行前运行…3.普通代码块在方法内的代码块,随着代码语句先后顺序运行.代码块的运行优先级:静态代码块>构造代码块>代码块二.继承中的构造方法继承关系中,在子类的构造方法运行时,可能会需要父类的一些数据,因此会默认的去调用父类的相同参数的构造方法!也原创 2020-07-29 20:41:54 · 192 阅读 · 0 评论 -
数组的基本排序算法
1.冒泡排序法冒泡排序的思想:两两比较,第一次比较完毕之后,最大出现在最大索引处,依次这样,可以得到一个排序的数组规律:两两比较,大的往后方法比较的次数:数组长度-1次//冒泡排序代码:for(int x = 0 ; x < arr.length-1 ; x ++){ for(int y = 0 ; y < arr.length-1-x ; y++){ if(arr[y] > arr[y+1]){ int temp = arr[y] ; arr[y] = a原创 2020-07-24 19:43:06 · 185 阅读 · 0 评论 -
面向对象的三大特征
面向对象的三大特征1.封装JAVA语言的封装是将对象的属性封装到类中,使得外部不能直接访问,并提供相应的方法供对象来使用.大大提高了数据的安全性,扩展性.封装的应用有javaBean,接口等.一个标准类也就是JavaBean实现的就是封装技术.一个标准类(javaBean)标准类将数据封装到类中,在类中可以自由修改.2.继承3.多态...原创 2020-07-24 19:38:05 · 135 阅读 · 0 评论 -
一个标准类(javaBean)
java标准类也就javaBean,使用javaBean可以封装对象的属性,使得程序安全性提高.标准类需要满足4个条件:1.成员变量采用private修饰.2.为每个成员变量写一对get/set方法3.有一个无参的构造方法.4.有一个全参的构造方法.下面写一个学生类的标准类:class Student { private int id; //学号 private String name;//姓名 private int age ; //年龄 private String sex原创 2020-07-23 17:28:26 · 1804 阅读 · 1 评论 -
成员变量与局部变量的区别
1.内存空间不同: 局部变量是在栈中开辟空间;成员变量是在堆中开辟空间.2.定义位置不同: 局部变量是定义在方法中,随着方法的结束而释放.成员变量是定义在类中,与方法平级.3.初始化不同: 局部变量必须手动初始化后才可以使用,而成员变量系统会默认初始化.4.生命周期不同 局部变量在使用完毕后就会释放,成员变量再使用方笔后需要等到垃圾回收器空闲时释放....原创 2020-07-22 20:45:41 · 151 阅读 · 1 评论 -
形参是基本类型与引用类型的区别
1.形参为基本类型当形式参数为基本类型时,传递过来的是一个值.方法在调用后,会在栈空间开辟一个空间,创建一个局部变量,然后将接受到的值复制到形式参数的变量上,然后对其进行操作.在方法结束时,创建的局部变量也会消失.同时其原始数据并没有收到影响.class Demo{ public static void main (String[] args ){ int a=3; int b=4; demo(a,b); System.out.println("a="+a+",b="+b); //原创 2020-07-22 20:43:23 · 1506 阅读 · 0 评论