
Java学习
信仰..
学无止境
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java:断言
断言机制允许在测试期间向代码中插入一些检查语句。当代码发布时,这些插入的检测语句将会被自动的移走。 java语言引入了关键字assert,这个关键字有两种形式: assert条件 :和assert条件 : 表达式 这两种形式都会对条件进行检测,如果结果为false,则抛出一个AssertionError异常。在第二种形式中,表达式将被传入AssertionError的构造器,并转换成一个...原创 2019-11-27 22:13:28 · 275 阅读 · 0 评论 -
java:内部类
1.使用内部类访问对象状态 内部类是定义在另一个类中的类,使用内部类的原因主要有以下三点: 1)内部类方法可以访问该类定义所在的作用域中的数据,包括私有的数据。 2)内部类可以对同一个包中的其他类隐藏起来 3)当想要定义一个回调函数且不想编写大量代码时,使用匿名内部类比较便捷。 注释:C++有嵌套类。一个被嵌套的类包含在外围类的作用域内,嵌套是一种类之间的关系,而不是对象之间的关系。在j...原创 2019-11-20 22:10:56 · 305 阅读 · 0 评论 -
java:lambda表达式
1.为什么引入lambda表达式? lambda表达式是一个可传递的代码块,可以在以后执行一次或者多次。其实在我们日常代码的编写中,已经不止一次的使用过这种代码块。 列如:考虑如何用一个定制比较器完成排序。如果我们想要按照长度而不是字典序对字符串进行排序,可以像sort方法传入一个Comparator对象: class LengthComparator implements Com...原创 2019-11-18 20:04:01 · 365 阅读 · 0 评论 -
java:通过反射机制调用任意方法
在C和C++中,可以从函数指针执行任意函数,C#中也提供了委托机制方便我们通过方法的存储地址来调用该方法。事实上,java的设计者曾说过:方法指针是比较危险,并且常常会带来隐患。除了反射机制外,java允许你通过反射机制来调用任意方法。 在Method类中有一个invoke方法,它允许调用包装在当前Method对象中的方法。invoke方法的签名是: Object invoke(Object...原创 2019-11-11 19:56:31 · 1295 阅读 · 0 评论 -
java:枚举类
相信大家在接触其他语言时已经知道了枚举类这一概念,下面是一个典型的例子: public enum Size{SMALL,MEDIUM,LARGE,EXTAR_LARGE}; 实际上,这个声明定义的类型是一个类,它刚好有四个实例,在此尽量不要构造新对象。 因此,在比较两个枚举类型的值时,永远不要调用equals,而直接使用“==”即可。 如果需要的话,可以在枚举类型中添加一些构造器、方法和...原创 2019-11-05 19:35:58 · 303 阅读 · 0 评论 -
java:参数数量可变的方法
在javaSE5.0之后提供了可以用可变的参数数量调用的方法(有时称为“变参”方法) 我们用最常见的printf方法举例,列如: System.out.printf("%d", n); System.out.printf("%d %s", n,"widgets"); 在上面的两条语句中,尽管一个调用包含两个参数,另一个调用包含三个参数,但他们调用的是同一个方法。 p...原创 2019-11-04 20:06:57 · 761 阅读 · 0 评论 -
java:Object类
Object类是java所有类的始祖,在java中每个类都是由它扩展而来的,但是并不需要这样写: public class Employee extends Object 如果没有明确的指出超类,Object就被认为是这个类的超类。 我们可以使用Object类型的变量引用任何类型的对象: Object obj=new Employee("ykc",300000); 当然,Object...原创 2019-10-31 20:05:47 · 344 阅读 · 0 评论 -
java:大数值
大数值 如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有用的分类:BigInteger和BigDecimal。这两个类可以处理包含任意长度数字序列的数值。BigInteger类实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点数运算。 使用静态的valueOf方法可以将普通的数值转化为大数值: ...原创 2019-10-23 21:00:27 · 366 阅读 · 0 评论 -
java:strictfp关键字
strictfp也即strictfloatpoint(精确浮点) 该关键字可应用于类、接口或者方法。当我们对一个类或者接口使用strictfp关键字时,该类中的所有代码,包括嵌套类型中的初始设定值和代码,都将严格地进行计算。严格约束意味着所有表达式的结果都必须是IEEE754算法对操作数预期的结果,以单精度和双精度格式表示。 备注:如果你想让你的浮点运算更加精确,而且不会因为不同的硬件平...原创 2019-10-21 22:01:47 · 430 阅读 · 0 评论 -
Java 反射
Java反射说的是在运行状态中,对于任何一个类,我们都能够知道这个类有哪些方法和属性。对于任何一个对象,我们都能够对它的方法和属性进行调用。我们把这种动态获取对象信息和调用对象方法的功能称之为反射机制。 能够分析类能力的程序成为反射。反射机制的功能极其强大。 反射机制可以用来: 1.在运行时分析类的能力 2.在运行时查看对象,列如:编写一个toString方法供所有类使用 3.实现通用的...原创 2019-10-17 21:20:35 · 317 阅读 · 0 评论 -
Java 泛型
假定我们有这样一个需求:写一个排序方法,能够对整型数组、字符串数组甚至其他任何类型的数组进行排序,该如何实现? 答案是可以使用Java 泛型。 使用 Java 泛型的概念,我们可以写一个泛型方法来对一个对象数组排序。然后,调用该泛型方法来对整型数组、浮点数数组、字符串数组等进行排序。 泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 泛型方法 你可以写一个泛型方法,该...原创 2019-09-24 20:32:56 · 295 阅读 · 0 评论