创建新的数据类型:类,通过class关键字,并且后面紧跟着的是class的名称: class Name { /*Class body goes here*/ } 然后我们可以针对这个类通过new来创建对象 : Name name = new Name(); 再给这个类中设置:字段(也可以成为数据成员或成员变量)。 这种情况下,只需要再使用连接句点即可: aClassName.bClassName.field = 100; 基本成员默认值 若类的某个成员是基本数据类型,即使没有进行初始化,Java也会确保它获取一个默认值 ,只有当变量作为类的成员使用时,Java才确保给定其默认值,以确保哪些是基本类型的成员变量得到初始化,防止产生程序错误。 如果是局部变量,Java不会给默认值,如果在初始化时没有赋值,编译时会报错
本文主要介绍了抽象类和接口的特性和使用方法。 具体代码在我的GitHub中可以找到 https://github.com/h2pl/MyTech 文章首发于我的个人博客: https://h2pl.github.io/2018/04/24/javase5 1 抽象类一般会实现一部分操作,并且留一些抽象方法让子类自己实现,比如Stringbuffer和Stringbuilder的父类abstractStringbuilder。 3 另外,一个类可以实现多个接口,但是不能继承多个类。 然而接口却可以继承多个其他接口。这一点很神奇。 下面看一下具体的例子,有一些小细节平时可能不会注意。 //因为会调用到父类的构造方法。
5.类 ? 5.1 类的声明与继承 ts的类基本包括了es6+中类的全部功能。 ts的抽象类是对js的又一扩展。 如果做这么一个类比:有一个“动物”类,它抽象概括了大部分生物的特征,但它没法被实例化,只有通过”狗“类,“人”类等子类来使之形象化。 因而,可以说抽象类是只能被继承但不能实例化的类。 5.4.2 接口与类之间的继承 接口继承类,然后再用一个类来继承这个接口: class Auto { state = 1 } interface AutoInterface extends Auto 下图反映了接口和类的关系: ?
昨天后台的一个小伙伴提到了,java里面的匿名类,这个概念在平常java码代码的时候用的特别多,所以找了一篇介绍表述比较清晰的文章分享给大家,能极大的简化代码量,是java编码基本功,属于必须掌握的范畴 然后实现了Child的一个实例,将其向上转型为Person类的引用 但是,如果此处的Child类只使用一次,那么将其编写为独立的一个类岂不是很麻烦? Thread t = new Thread() { public void run() { for (int i = 1; i <= 5; 实例5:Runnable接口的匿名内部类实现 public class Demo { public static void main(String[] args) { Runnable r = new Runnable() { public void run() { for (int i = 1; i <= 5; i++) { System.out.print(i + " "); } }
heros[1:2])#后羿,类型为list print(heros[1:3])#['后羿','马超'],类型为list,理解为大list变为小list #从索引1开始到最后 print(heros[1:5] range()范围性方法默认从0开始传进去的参数为止,取得到第一个值取不到最后一个值 for 临时变量 in 一串数据: 将一串数据中的单个数据依次循环查看和使用 for i in [1,2,3,4,5] : print(i) for i range(5): print(i) 2.whlie循环 while(循环终止条件) a=0 while(a<10): print(a) a=a+1 #0-9 首单词首字母小写,其余后面单词首字母大写 numList=[] for i in range(10): numList.append(i) print(numList)#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] numList1=[i for i in range(10)]#代替上述三行代码 print(numList1)#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Java基础类库 使用Scanner获得键盘输入: public class ScannerKeyBoardTest { public static void main(String[] args Java7新增的Objects类: public class ObjectsTest { // 定义一个obj变量,它的默认值是null static ObjectsTest obj; 为此,Java提供了BigDecimal类,该类提供了大量构造器用于创建BigDecimal对象,包括把所有的基本数值类型变量转换成一个BigDecimal对象,也包括利用数字字符串、数字字符数组来创建 为了避免程序中对于double运算的繁琐,可以以BigDecimal基础定义一个Arith工具类: public class Arith { // 默认除法运算精度 private static Java 8专门新增了一个java.time包,该包下包含了如下常用类: Clock、Duration、LocalDate、LocalTime、LocalDateTime、MonthDay、Year、
类是对某一类事物的抽象描述,而对象用于表示现实中该类事物的个体。 类的定义 [修饰符] class 类名{ } 定义类的注意: (1)如果类使用了public 修饰符 必须保证当前的文件名和当前类相同 (2) 类名使用名称表示 类表示某一类事物 首字母大写 public 一个引用变量没有通过new分配内存空间,这个对象就是空对象,Java使用关键字null表示空对象。 当调用一个空对象的实例变量或实例方法时,会抛出空指针异常NullPointException String str = null; System.out.println(str.length());//java.lang.NullPointerException 当一个对象被创建后,对象保存在堆内存中,Java程序不允许直接访问堆内存的对象,不管是数组还是对象,当程序访问引用变量的成员值或者方法时,实际上是访问引用变量的所指向的数组或者对象的成员变量或者方法。
面试官:Java的容器类你有什么了解吗? -:额,没有用过.... 面试官:你肯定用过,但你没有注意过.... -:应该是吧.... 你知道什么是容器类吗? Java容器可以说是增强程序员编程能力的基本工具,本文将与您一起理解容器类,看完之后你也许会恍然大悟,这原来就是容器类啊,一起避免面试时的尴尬!!!! 数组显然只能创建固定长度的对象,为了使程序变得更加灵活与高效,Java类库提供了一套完整的容器类,具备完善的方法来解决上述问题。 2.容器的类别 ? 容器中的七大接口 1.Collection接口 2.Map接口 3.Set接口 4.List接口 5.Queue接口 6.Iterator接口 7.Comparable接口 其中List i++){ intset.add(rand.nextInt(30)); } System.out.println(intset); } } 5.
Java是完全面向对象的,必须熟悉OOP才能够编写Java程序。面向对象的程序是由对象组成的,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。 ---- 上一篇内容:Java基础:Java流程控制 下一篇内容:Java基础:Java面向对象 更多知识学习:全网最全的 Java 技术栈内容梳理(持续更新中) ---- 文章目录 一、面向对象程序设计概述 Java是完全面向对象的,必须熟悉OOP才能够编写Java程序。面向对象的程序是由对象组成的,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。 1、类 类(class)是构造对象的模板或蓝图。 我们可以将类想象成制作小甜饼的切割机,将对象想象为小甜饼。由类构造(construct)对象的过程称为创建类的实例(instance)。 用 Java 编写的所有代码都位于某个类的内部。 标准的 Java 库提供了几千个类,可以用于用户界面设计、日期、日历和网络程序设计。尽管如此,还是需要在 Java 程序中创建一些自己的类,以便描述应用程序所对应的问题域中的对象。
目录 前言 一、逻辑运算符 (1)逻辑运算符介绍 (2)逻辑运算符分类 (3)逻辑运算符运算规则 (4)逻辑与短路的区别 (5)演示 (6)逻辑异或 二、赋值运算符 (1)赋值运算符介绍 (2)赋值运算符分类 (3)赋值运算符特点 总结 ---- 前言 了解 逻辑运算符 和 赋值运算符 的基础知识。 )逻辑或(|):当 a 和 b 有一个为 true 时,结果为 true , 否则为 false 4)短路或(||):当 a 和 b 有一个为 true 时,结果为 true , 否则为 false 5) false 2)对于短路或来说,如果第一个条件为 true ,则后面的条件不会在判断,结果为 true 对于逻辑或来说,如果第一个条件为 true ,则后面的条件也会继续判断,结果为true (5) if((5 < 10)^ (10 > 100)) { System.out.print("正确"); } else { System.out.print("错误"); }
转眼间我们已经工作完一周了,这周开始阿Q要不定时更新知识了,先让我们来学习一下java中的Object与string类吧。 Object类 API:Application Programming Interface 应用程序编程接口,Java API就是Java提供给我们使用的类,这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的 Object:所有类都直接或者间接的继承自Object类,是类层次结构的根类、 public int hashCode() 返回该对象的哈希码值。默认情况下,该方法会根据对象的地址来计算。 s4 = new String(arr3); System.out.println(s4); //打印出:abdcde String s5 = new String(arr3,1,3); //将arr3字符数组,从1索引开始转换3个 System.out.println(s5); //打印出:bcd
import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.util.HashMap ; import java.util.Map; import java.util.concurrent.locks.ReentrantLock; import org.apache.commons.logging.Log ; import org.apache.commons.logging.LogFactory; //import sun.security.provider.MD5; /** * 简单计算MD5 * * (); private MD5Utils(){ try { mHasher = MessageDigest.getInstance(“md5”); } catch (Exception e) { hash(content); } /** * 对字符串进行md5 * * @param str * @return md5 byte[16] */ public byte[] hash(String
Java基础系列文章 Java基础(一):语言概述 Java基础(二):原码、反码、补码及进制之间的运算 Java基础(三):数据类型与进制 Java基础(四):逻辑运算符和位运算符 Java基础(五) :流程控制语句 Java基础(六):数组 Java基础(七):面向对象编程 Java基础(八):封装、继承、多态性 Java基础(九):Object 类的使用 Java基础(十):关键字static、代码块 、关键字final Java基础(十一):抽象类、接口、内部类 Java基础(十二):枚举类 Java基础(十三):注解(Annotation) Java基础(十四):包装类 Java基础(十五):异常处理 Java基础(十六):String的常用API Java基础(十七):日期时间API Java基础(十八):java比较器、系统相关类、数学相关类 Java基础(十九):集合框架 Java基础(二十) :泛型 Java基础(二十一):集合源码 Java基础(二十二):File类与IO流 Java基础(二十三):反射机制 Java基础(二十四):网络编程 Java基础(二十五):Lambda表达式、方法引用
在 Java 中,这个“根”就是 Object 类。 Object 类中包含有: toString() equals() 两个方法,前者可以打印对象的信息(可以在子类中具体实现);后者判断是否管理着同一个对象 (默认实现为 ==) 。 比如,要实现只要 CD 类中 artist 成员相同,equals()就返回 true,需要这样写: @Override public boolean equals(Object obj) {
,而字 符串应用又非常广泛,因此Java语言专门提供了 String 类。 (s5)); //忽略大小写,相同输出0 忽略了AB大写,所以s1与s5对象指向的地址对应的内容一样,输出为0。 ); System.out.println(str.substring(0, 5)); 输出结果: hello world 注意:在java final 修饰类表明该类不想被继承, final 修饰引用类型表明该引用变量不能引用其他对象,但是其引用对象中的内容是可以修改的 。 3.总结 String类的方法小编在这里列举了很多,如果还有,希望各位uu在评论区提出宝贵意见。 制作不易,麻烦给小编一个小小的赞吧。
Java基础系列文章 Java基础(一):语言概述 Java基础(二):原码、反码、补码及进制之间的运算 Java基础(三):数据类型与进制 Java基础(四):逻辑运算符和位运算符 Java基础(五) :流程控制语句 Java基础(六):数组 Java基础(七):面向对象编程 Java基础(八):封装、继承、多态性 Java基础(九):Object 类的使用 Java基础(十):关键字static、代码块 、关键字final Java基础(十一):抽象类、接口、内部类 Java基础(十二):枚举类 Java基础(十三):注解(Annotation) Java基础(十四):包装类 Java基础(十五):异常处理 Java基础(十六):String的常用API Java基础(十七):日期时间API Java基础(十八):java比较器、系统相关类、数学相关类 Java基础(十九):集合框架 Java基础(二十) :泛型 Java基础(二十一):集合源码 Java基础(二十二):File类与IO流 Java基础(二十三):反射机制 Java基础(二十四):网络编程 Java基础(二十五):Lambda表达式、方法引用
在Java语言中,方法大多用于处理一些数据并得到结果,其包括以下几种要素: 修饰符:用于限定方法的权限,常用的有public、private、static。 方法的重载 Java语言规定,在同一个类中,允许出现同名的方法,只要方法的参数列表不同即可,这就是方法的重载。 参数列表不同,指的是个数、顺序或数据类型不同。 方法的重写 Override 子类中如果出现了与父类一模一样的方法时,子类会重写父类的方法。方法声明要与父类相同,而且修饰权限不能比父类更低。 此处内容在后期讲解继承的时候会再次详解。 类 类是什么?生活中的解释就是由一些具有共同特征的个体组成的一个群体,比如人类。在Java中也是如此,更加专业的说法是描述一类对象的行为和状态。 在Java语言中存在一些提前由jdk开发者定义好的类,我们可以直接导入调用,比如String等等。当然,我们也可以自定义类。 自定义类即是对现实中事物的描述,描述事物的属性方法。
本文链接:https://blog.csdn.net/weixin_42528266/article/details/102971807 Math类 包含了常见的数学运算函数。 (枚举实质上还是类!而每个被枚举的成 员实质就是一个枚举类型的实例,他们默认都是public static final的。可以直接通过枚举 类型名直接使用它们。) 强烈建议当你需要定义一组常量时,使用枚举类型 尽量不要使用枚举的高级特性,事实上高级特性都可以使用普通类来实现,没有必要引 入复杂性! File类 文件和目录路径名的抽象表示形式。 f4 = new File(f2,"TestFile666.java"); File f5 = new File("d:/src3/aa/bb/cc/ee/ddd"); f5.mkdirs(); //f4.createNewFile(); // f4.delete(); if(f.isFile()){ System.out.println
本文链接:https://blog.csdn.net/weixin_42528266/article/details/103275354 3.1 什么是Random类 此类的实例用于生成伪随机数。 例如,以下代码使用户能够得到一个随机数: Random r = new Random(); int i = r.nextInt(); 3.2 Random使用步骤 查看类 java.util.Random 查看成员方法 public int nextInt(int n) 返回一个伪随机数,范围在[0,n) 之间的int 值 使用Random类,完成生成3个10以内的随机整数的操作,代码如下: ?
Scanner 类的作用是用来获取用户的输入 前提: import java.util.Scanner; 创建文件扫描器对象,System.in表示的是标准输入 (装饰者模式????