韩顺平JAVA
蜉~蝣
这个作者很懒,什么都没留下…
展开
-
Java线程基础
我们试着直接调用Cat.run(),结果是会一直执行Cat.run()方法,而且当前线程的名字也换成了main显然此时只有一个main线程在执行,也就是没有创建一个新的线程。而且必须要等到执行完Cat.run()后才能执行下边的内容,main线程被阻塞在这里。(串行化而非多线程)简单来说run()方法只是一个普通方法,它不会实现多线程。而start()方法却可以调用JVM进行系统调度、系统分配等一系列操作,因此创建一个线程只能由start()来完成。原创 2022-11-19 11:42:25 · 69 阅读 · 0 评论 -
常用类之日期类
创建一个Date对象,返回系统当前时间。转换上述运行结果的格式输出结果具体格式规定如图也可以将一个格式化好的字符串转成相应的Date运行结果(转为国外日期形式)注意字符串也要按照sdf的格式。其实这里可以发现所谓的SimpleDateFormat类 - sdf起到的作用就是1.首先规定好sdf的格式。2.通过调用sdf.format()函数可以接收一个Date对象,将其转化为格式好的字符串。原创 2022-10-14 21:29:07 · 274 阅读 · 0 评论 -
System类和大数类
在进行加减乘除运算时需要调用BigInteger类的方法进行BigInteger类之间的运算。BigDecimal的操作和BigInteger相同,但是除法要小心除不尽的情况(指定精度)。3.currentTimeMillens:返回当前时间距离1970-1-1的毫秒数。创建一个BigInteger类的对象,注意构造方法传入的是一段字符串。2)BigDecimal适合保存精度更高的浮点型。1)BigInteger适合保存比较大的整型。1.exit 退出当前程序。4.gc:运行垃圾回收机制。原创 2022-10-13 16:04:40 · 82 阅读 · 0 评论 -
接口基本知识
接口就是给出一些没有实现的方法,封装到一起,到某个类要使用的的时候,就根据具体情况把这些方法写出来。2.接口中的所有方法是public方法,接口中的抽象方法可以不用abstract修饰。6.接口中的属性,只能是 final的而且是 public staic final。8.接口的修饰符只能是public 和默认这点和外部类相同。3.一个普通类实现接口,就必须将该接口的所有方法都实现。7.一个接口不能继承其他类但是可以继承多个别的接口。4.抽象类实现接口,可以不用实现接口的方法。1.接口不能被实例化。原创 2022-10-03 22:28:29 · 172 阅读 · 0 评论 -
StringBuffer类
因为StringBuffer字符内容是存在 char[] vale 中,所以更改字符串中内容时不必像String一样更换地址,效率更高。从类图中可以看到StringBuffer的直接父类是AbstractStringBuilder,并且实现了Serializable说明StringBuffer可以参与网络传输。1.java.lang.StringBuffer代表可变的字符序列,可以对字符串内容进行增删。2.很多方法和String相同,但StringBuffer是可变长度的。二、和String类的区别。原创 2022-10-03 16:16:51 · 176 阅读 · 0 评论 -
String类
String类实现了Serualizable,说明了String可以串行化。字符串的字符使用Unicode字符编码,一个字符(不区分字母还是汉字)占两个字节。String类实现了Comparable,说明了String可以进行比较。2)字符串是不可变的,一个字符串对象一旦被分配,其内容是不可变的。1)String 是一个final类,代表不可变的字符序列。String是一个final类,不能被其它类继承。String有很多构造器、实现了构造器的重载。3)字符串常量相加看的是池变量相加看的是堆。原创 2022-10-02 14:24:03 · 235 阅读 · 0 评论 -
动态绑定机制
B类实例b调用sum()方法,jvm从B类开始沿着继承链向上查找sum()到A类。执行A类的sum()方法,sum()方法中调用了getI()方法,访问了属性i;JAVA的动态绑定机制(DynamicBinding),非常重要。getI()调用的是A类还是B类方法?i访问的是A类还是B类属性?在继承链中,JVM一直沿着继承链动态找到带有该方法的实现。开始(这里也就是B类)沿着继承链查找sum()方法。(这里也就是A类)开始沿着继承链向上查找;A类是B类的父类,B类为运行类型。答案是 getI()方法会。原创 2022-09-27 00:12:36 · 134 阅读 · 0 评论 -
常用类之包装类
针对八种基本数据类型的引用类型标黄色的包装类的父类均为Number。继承关系如下包装类中封装了许多方法。原创 2022-09-13 15:10:43 · 99 阅读 · 0 评论 -
面对对象-继承与多态
使用细节1.子类继承了所有的属性和方法(属性包括在父类中已经被赋的值),非私有的属性和方法可以在子类直接访问,但是私有属性和方法不能直接在子类访问,通过父类提供的公共方法去访问。2.子类必须调用父类的构造器,完成对父类的初始化。3.当创建子类对象时,不管使用子类哪个构造器,默认情况下总是会调用父类的无参构造器,如果父类没有提供无参构造器(在父类中如果没有无参构造器代码段,并且声明了其他有参构造器,则默认的无参构造器被隐藏。原创 2022-09-06 23:16:02 · 96 阅读 · 0 评论 -
抽象类和抽象方法
1)用abstract 关键字来修饰一个类时,这个类就叫做抽象类访问修饰符 abstract 类名{}2)用abstract 关键字来修饰一个方法时,这个方法就是抽象方法访问修饰符 abstract 返回类型 方法名(参数列表);//没有方法体3)抽象类的价值更多是在于设计,是设计者设计好后,让子类继承并实现的抽象类。原创 2022-09-01 17:46:52 · 69 阅读 · 0 评论 -
final关键字
final中文意思-最后的、最终的。final可以修饰类、属性、方法和局部变量。在某些情况下,当面临以下需求时,就会使用到final;1)当不希望父类被继承时,可以用final修饰2)当不希望父类的某个方法被子类覆盖/重写时,可以使用final关键字修饰。3)当不希望类的某个属性的值被修改,可以使用final修饰4)当不希望某个局部变量被修改,可以使用final修饰。...原创 2022-08-31 23:38:18 · 44 阅读 · 0 评论 -
代码块的细节
代码块又称初始化块,属于类中的成员(即是类中的一部分),类似于方法,将逻辑语句封装在方法体中,通过{}包围起来。但和方法不同,没有方法名,没有返回,没有参数,只有方法体,而且不通过对象或类显式调用,而是加载类时,或创建对象时隐式调用。基本语法[修饰符]{代码;}注意:1)修饰符可选,要写只能写staic2)代码块分为staic修饰的静态代码块和没有staic修饰的普通代码块,3)逻辑语句可以为任何逻辑语句(输入输出方法调用等)4);可以写上也可以不写5)代码块的调用优先于构造器。...原创 2022-08-30 14:57:40 · 76 阅读 · 0 评论 -
理解main方法
4.该方法接收String类型的数组参数(args)。该数组中保存执行java命令时传递给所运行类的参数。解释main方法的形式:publiv staatic void main(String[] args){}2.java虚拟机需要调用类的main()方法,所以该方法的访问权限必须是public。3.java虚拟机在执行main()方法时不需要创建对象,所以该方法必须是public。1.main方法由java虚拟机调用。...原创 2022-08-29 15:50:31 · 92 阅读 · 0 评论 -
类变量与类方法
访问修饰符 staic 变量类型 变量名;staic 访问修饰符 变量类型 变量名;原创 2022-08-29 15:14:02 · 314 阅读 · 0 评论 -
面对对象编程-封装
程序会直接通过构造器初始化属性,封装就出现了漏洞。这时可以通过调用set方法实现封装。编写set方法后如果再使用构造器。set和get的快捷键。原创 2022-08-24 20:06:30 · 62 阅读 · 0 评论 -
包的认识和基本使用
import 的作用是引入不同包的类放在package下边。可以有多条且对顺序无要求。在同一个项目中,不同包之间的类可以互相调用。若存在同名的类则会有特别标识。package的作用是声明当前类所在的包。需要放在类的最上边(首句)。包的本质就是创建不同的文件夹/目录存放不同的类文件。在同一个包中不能存在两个命名相同的类。五、package和import。原创 2022-08-23 23:18:42 · 171 阅读 · 0 评论 -
进制转换的问题
三、二进制转其他进制(其他进制->十进制->二进制)因为一个字节有八位 ,因此要前补两个零。余数倒过来也就是图中的从下到上。(A在十六进制中含义为10)一、其他进制转换为十进制。0b1011转换为十进制。2.转八进制和转十六进制。四、八、十六进制转二进制。(八进制以数字零开头)3.十六进制转十进制。二、十进制转其他进制。和转二进制的规则相同。...原创 2022-08-02 19:30:29 · 940 阅读 · 0 评论 -
标识符命名规范
3.变量名,方法名有多个单词组成时,第一个单词首字母小写从第二个单词开始首字母大写。4.常量名所有字母都大写,有多个单词组成时,用下划线连接。2.类名接口名多单词组成时,所有单词首字母大写。1.包名有多个字母组成时,所有字母小写。例如TankShotGame。例如tankShotGame。例如com.hsp.crm。...原创 2022-08-02 15:33:58 · 102 阅读 · 0 评论