study3

注释

书写注释是一个非常好的习惯。

java中的注释有三种:

1.单行注释

2.多行注释

3.文档注释

写代码注意规范

标识符

标识符注意点

1.所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线(_)开始

2.首字符之后可以是字母(A-Z或者a-z),美元符($)、或者下划线(_)或数字的任何字符组合

3.不能使用关键字作为变量名或方法名

4.标识符是大小写敏感的

5.合法标识符举例:age、$salary、value、 _1_value

6.非法标识符举例:123abc、-salary、#abc

7.可以使用中文命名,但是一般不建议使用,也不建议使用拼音命名,很low

数据类型

强类型语言

要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用

java的数据类型分为两大类

基本类型

1.整数类型:byte、short、int、long.

2.浮点类型:float、double

3.布尔类型:boolean(true/false)

引用数据类型

类 接口 数组

什么是字节?

1.位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数

2.字节(byte):是计算机中数据处理的基本单位,习惯上用大写B表示,

1B=8bir

字符:是指计算机中使用的字母、数字、字和符号

进制

二进制0b 十进制 八进制0 十六进制0x

前缀

最好避免使用浮点数进行比较!

编码 Unicode 表(97 = a, 65 =A) 

转义字符

/u /t /n

类型转换

1.运算中,不同类型的数据先转化为同一类型,然后进行运算

强制转换(类型)变量名 高->低

自动转换 低->高

注意

1.不能对布尔值进行转换

2.不能把对象类型转为不相干的类型

3.把高容量转换到低容量的时侯,强制转换

4.转换的时候可能存在内存溢出,或者精度问题(操作比较大的数注意溢出问题)

public class Work2 {   
 public static void main(String[] args) {      
   int money = 10_0000_0000;   
   int year = 20;    
   int total = money*year;    // 计算时溢出了     
   long total2 = money*year;     //默认是int,转换之前已经存在问题了    
   long total3= (long)money*year; //先把一个数转换为long       
   System.out.println(total3);    }}
实现思路: 1. 读取配置文件,获取要创建的类名和要执行的方法名; 2. 利用反射机制创建类的对象; 3. 利用反射机制获取要执行的方法; 4. 执行方法。 代码实现如下: ``` import java.io.IOException; import java.io.InputStream; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Properties; public class ReflectionFramework { public static void main(String[] args) throws IOException, ClassNotFoundException, NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException { // 读取配置文件 InputStream input = ReflectionFramework.class.getClassLoader().getResourceAsStream("ref.properties"); Properties properties = new Properties(); properties.load(input); String className = properties.getProperty("className"); String methodName = properties.getProperty("methodName"); // 利用反射机制创建类的对象 Class clazz = Class.forName(className); Object obj = clazz.newInstance(); // 利用反射机制获取要执行的方法 Method method = clazz.getDeclaredMethod(methodName); // 执行方法 method.invoke(obj); } } ``` 测试用的Student类代码如下: ``` public class Student { public void study() { System.out.println("我是学生,正在学习中..."); } private void study2() { System.out.println("我是学生2"); } protected void study3() { System.out.println("我是学生3"); } public void study4() { System.out.println("我是学生4"); } } ``` 配置文件ref.properties内容如下: ``` className=Student methodName=study2 ``` 运行ReflectionFramework类,输出结果为: ``` 我是学生2 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值