java基础系列五

以下基础总结是个人模糊点,大神可跳过,新手可参考,如有错误请指出,谢谢

 

基础四:https://blog.csdn.net/qq_39657909/article/details/80448956

1.      java 修饰符

a)        synchronized

                        i.             关键字声明的方法同一时间只能被一个线程访问

                      ii.             可以应用于四个访问修饰符

                     iii.             public  synchronized  void  showDetails(){ ....... }

b)        Transient

                        i.             该修饰符包含在定义变量的语句中,用来预处理类和变量的数据类型

                      ii.             序列化的对象包含被 transient 修饰的实例变量时,java 虚拟机(JVM)跳过该特定的变量

                     iii.             public  transient  int  limit = 55; // 不会持久化
publicintb; // 持久化

c)        volatile

                        i.             修饰的成员变量在每次被线程访问时,都强制从共享内存中重新读取该成员变量的值

                      ii.             当成员变量发生变化时,会强制线程将变化值回写到共享内存。保证两个线程访问时是同一个值

                     iii.             一个volatile对象的引用可能是NULL

d)        Protected

                        i.             基类的protected成员是包内可见的,并且对子类课件

                      ii.             若子类与基类不在同一包中,那么在子类中,子类实例可以访问其从基类继承而来的protected方法,而不能访问基类实例的protected方法。

2.      Java运算符

a)        位运算

                        i.             <<:按位左移运算符。做操作数按位左移右操作数指定的位数(2^左移位数)。

                      ii.             >>:按位右移运算符。左操作数按位右移右操作数指定的位数(2^右移位数,无符号)。

                     iii.             >>>:按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充(2^左移位数,有符号)。

b)        条件运算符

                        i.             条件运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的值。该运算符的主要是决定哪个值应该赋值给变量。

                      ii.             实现代码:Variable x =(expression)?value if true:value if false

c)        Instanceof运算符

                        i.             用于检测操作对象类型并进行判断

                      ii.             写法:(Object reference variable)instanceof (class/interfacetype)

                     iii.             如果运算符左侧变量所指的对象,是操作符右侧类或接口(class/interface)的一个对象,那么结果为真。如果被比较的对象兼容于右侧类型,该运算符仍然返回true。

                     iv.             例子:
String name=”aaa”;
boolean result=name instanceof String;

3.      Java循环

a)        Java5中引入了一种主要用于数组的增强型for循环

b)        for(声明语句 : 表达式){//代码句子}
声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
表达式:表达式是要访问的数组名,或者是返回值为数组的方法。

4.      java Number&Math

a)        Number:java为每个内置数据类型提供了对应的包装类。

                        i.             为什么存在:因为在开发中我们经常会遇到需要使用对象,而不是内置数据类型的情形

                      ii.             包装类有:(Byte、Short 、Integer、Long、Float、Double)都是抽象类Number的子类。

                     iii.             这个包装类的过程其实就是装箱。即把值类型转换为引用类型。

                     iv.             代码:
Integer   x=5;
x=x+10;
在这个过程中x被赋为整型值时,由于x是一个对象,所以编译器要对x进行装箱。即引用类型转换为值类型。

b)        Math

                        i.             Java 的 Math类包含了用于执行基本数学运算的属性和方法,如初等指数、对数、平方根和三角函数

                      ii.             Math 的方法都被定义为static 形式,通过 Math 类可以在主函数中直接调用

c)        Math与Number的类方法

                        i.             Number方法

                            1.        xxxValue():将Number对象转换为xxx数据类型的值并返回。

                            2.        compareTo():将number对象与参数比较

                            3.        equals():返回一个Number对象指定的内置数据类型。

                            4.        toString():用于返回以一个字符串表示的 Number 对象值。

                            5.        parseInt():用于将字符串参数作为有符号的十进制整数进行解析。

                      ii.             Math方法:

                            1.        abs():返回参数的绝对值。参数可以是 int, float, long, double, short, byte类型。

                            2.        ceil() 方法可对一个数进行上舍入,返回值大于或等于给定的参数。等等方法

5.      java中的Character类

a)        包装了基本类型char的值

6.      Java中的String类

a)        Java 中字符串属于对象

7.      Java日期时间

a)        Java.util包提供了Date类来封装当前的时间和日期。

b)        实例化:

                        i.             Date()使用当前时间初始化。

                      ii.             Date(long millisec)该参数是从1970年1月1日起的毫秒数,来进行初始化。

c)        SimpleDateFormat格式化日期

                        i.             实例化:

1.        SimpleDateFormat ft = newSimpleDateFormat ("E yyyy.MM.dd 'at' hh:mm:ss a zzz");

                      ii.             时间和日期的格式化编码:

字母

描述

示例

G

纪元标记

AD

y

四位年份

2001

M

月份

July or 07

d

一个月的日期

10

h

 A.M./P.M. (1~12)格式小时

12

H

一天中的小时 (0~23)

22

m

分钟数

30

s

秒数

55

S

毫秒数

234

E

星期几

Tuesday

D

一年中的日子

360

F

一个月中第几周的周几

2 (second Wed. in July)

w

一年中第几周

40

W

一个月中第几周

1

a

A.M./P.M. 标记

PM

k

一天中的小时(1~24)

24

K

 A.M./P.M. (0~11)格式小时

10

z

时区

Eastern Standard Time

'

文字定界符

Delimiter

"

单引号

`

d)        Printf格式化日期

                        i.             printf 方法可以很轻松地格式化时间和日期。使用两个字母格式,它以 %t 开头并且以下面表格中的一个字母结尾。

                      ii.             格式说明
 

转  换  符

说    明

示    例

c

包括全部日期和时间信息

星期六十月 27 14:21:20 CST 2007

F

"年-月-日"格式

2007-10-27

D

"月/日/年"格式

10/27/07

r

"HH:MM:SS PM"格式(12时制)

02:25:51 下午

T

"HH:MM:SS"格式(24时制)

14:28:16

R

"HH:MM"格式(24时制)

14:28

e)        解析字符串为时间

                        i.             SimpleDateFormat类有一些附加的方法,特别是parse(),它试图按照给定的SimpleDateFormat对象的格式化存储来解析字符串

                      ii.             代码:

1.  import java.util.*;  

2.      

3.  public class DiffDemo {  

4.     

5.     public static void main(String args[]) {  

6.        try {  

7.           long start = System.currentTimeMillis( );  

8.           System.out.println(new Date( ) + "\n");  

9.           Thread.sleep(5*60*10);  

10.          System.out.println(new Date( ) + "\n");  

11.          long end = System.currentTimeMillis( );  

12.          long diff = end - start;  

13.          System.out.println("Difference is : " + diff);  

14.       } catch (Exception e) {  

15.          System.out.println("Got an exception!");  

16.       }  

17.    }  

18. }  

基础六:https://blog.csdn.net/qq_39657909/article/details/80879802

版权声明:本博客为记录本人自学感悟,内容大多从网上学习与整理所得,若侵权请告知!

https://mp.csdn.net/postedit/80365677

猜你喜欢

转载自blog.csdn.net/qq_39657909/article/details/80864147