构造方法

java基础笔记(2)

早过忘川 提交于 2019-12-03 10:27:50
java中成员变量是有默认初始值的,而局部变量是没有的; 构造方法名和类名相同,没有返回值,即结构如下:public 构造方法名(); 实例化类的本质就是调用了类的构造方法; 如果自定义了构造方法,就不会调用默认的构造方法了,即便你自己自定义的方法是有参数,而实例化时没带参数,它也不会去调用默认的无参构造方法,而是提示错误;同样的,构造方法也可以重载,实例化时根据赋予的参数对应选择; 每个类都可以实例化多个对象,每个对象都有自己的成员,相互独立,而static修饰的成员为静态成员或类成员,即它属于整个类所有,而不是特定的某个对象;访问时可以使用对象和类名进行访问,鉴于它的作用更加推荐是使用类名; 同样的,static也可以用来修饰方法,且被static修饰的方法可以之间调用同类中的static属性或方法,而要调用非static属性或方法时,需要通过对象名来实现; 而普通方法是可以直接调用同类的属性; 在类的声明中,可以存在多个初始化块,如果有static修饰则表示为静态初始化块,和普通的区别就是普通的初始化块在实例化成对象时都会进行一次初始化,而静态初始化块只会进行一次初始化,且在第一次执行顺序上是先执行静态初始化块然后再初始化块最后才是构造函数; 访问控制符: private:同类 没声明:同类、同包 protected:同类、同包、子包 public:全部 内部类

JAVA基础复习(重点)

易管家 提交于 2019-12-03 08:48:56
一、 初识Java编程 1、 Java开发环境 JDK Java开发工具 JVM Java虚拟机 JRE Java运行环境 2、实现第一个hello world public class Hello{ public static void main(String[] args){ System.out.println("hello man!"); } } 执行代码: (1) 在命令窗体输入: javac 文件名.java (2) 输入:java 文件名 注意: (1) 类名和文件名要保持一致; (2) Java源代码中的所有标点符号使用英文输入法状态输入; (3) Java源代码是区分大小写; (4) 类名默认都使用大写; 3、Java运行原理 4、变量的声明 声明语法: 数据类型 变量名 ; 赋值: 变量名 = 值; 示例: public class Hello{ public static void main(String[] args){ //声明整数类型的a,在内存中创建这个变量 int a; double b; double c; //给变量赋值 a = 1; b = 2; System.out.println(a/b); } } 5、标识符 (1) 标识符是用于类名、变量名、方法名、对象名、数组名等的命名; (2) 可以使用英文、数字、下划线_、$符号; (3)

Java自学-接口与继承 super

易管家 提交于 2019-12-03 08:48:54
Java的super关键字 步骤 1 : 准备一个显式提供无参构造方法的父类 准备显式提供无参构造方法的父类 在实例化Hero对象的时候,其构造方法会打印 “Hero的构造方法 " package charactor; import property.Item; public class Hero { String name; //姓名 float hp; //血量 float armor; //护甲 int moveSpeed; //移动速度 public void useItem(Item i){ System.out.println("hero use item"); i.effect(); } public Hero(){ System.out.println("Hero的构造方法 "); } public static void main(String[] args) { new Hero(); } } 步骤 2 : 实例化子类,父类的构造方法一定会被调用 实例化一个ADHero(), 其构造方法会被调用 其父类的构造方法也会被调用 并且是父类构造方法先调用 子类构造方法会默认调用父类的 无参的构造方法 package charactor; public class ADHero extends Hero implements AD{ @Override public

Java 方法

 ̄綄美尐妖づ 提交于 2019-12-03 08:21:13
在前面几个章节中我们经常使用到 System.out.println() ,那么它是什么呢? println() 是一个方法。 System 是系统类。 out 是标准输出对象。 这句话的用法是调用系统类 System 中的标准输出对象 out 中的方法 println()。 那么什么是方法呢? Java方法是语句的集合,它们在一起执行一个功能。 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 方法的优点 1. 使程序变得更简短而清晰。 2. 有利于程序维护。 3. 可以提高程序开发的效率。 4. 提高了代码的重用性。 方法的命名规则 1.方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头写,不使用连接符。例如: addPerson。 2.下划线可能出现在 JUnit 测试方法名称中用以分隔名称的逻辑组件。一个典型的模式是: test<MethodUnderTest>_<state>,例如 testPop_emptyStack。 方法的定义 一般情况下,定义一个方法包含以下语法: 修饰符 返回值类型 方法名 ( 参数类型 参数名 ) { ... 方法体 ... return 返回值; } 方法包含一个方法头和一个方法体。下面是一个方法的所有部分: 修饰符: 修饰符,这是可选的,告诉编译器如何调用该方法

JAVA学习之super.,this的用法

本秂侑毒 提交于 2019-12-03 07:40:53
this关键字用在实体类里面,表示的是本对象。this() 表示创建该类的构造方法。this. 属性,表示调用本对象的属性,this. 方法 表示调用执行本对象的方法。 super关键字则是在子类里面调用父类的非私有化的属性和方法以及含参的构造方法和无参构造方法。 来源: https://www.cnblogs.com/yindong2019/p/11783548.html

序列化反序列化流、打印流

回眸只為那壹抹淺笑 提交于 2019-12-03 06:39:42
ObjectOutputStream(序列化流)   ObjectOutputStream是序列化流,可以将Java程序中的对象写到文件中。   ObjectOutputStream 构造方法:     ObjectOutputStream(OutputStream out):参数要传递字节输出流。   ObjectOutputStream写对象的方法(特有方法):     void writeObject(Object obj): 向文件中写对象。   ObjectOutputStream 的使用步骤:     创建序列化流,用来写。     调用 writeObject 方法,写对象。     释放资源。   注意: 要使用序列化流向文件中写的对象,必须实现 Serializable 接口。    例: 1 // 创建一个Person对象 2 Person p=new Person("大灰狼",18); 3 //明确目的地 4 FileOutputStream fos=new FileOutputStream("D:\\demo0723\\person.txt");//不能续写true 5 //创建序列化流 6 ObjectOutputStream oos=new ObjectOutputStream(fos); 7 //将对象写入文件中 8 oos.writeObject(p

java构造方法

ぐ巨炮叔叔 提交于 2019-12-03 06:24:16
1.构造方法就是与类名相同的方法,且没有返回值,形参可有可无。 2.类中没有构造方法,也可以直接实例化。 3.有参的构造方法,就是在实例化的时候初始化属性值(成员变量赋值)。 4.有参的构造方法,和无参的构造方法可同时存在。构造方法重载的特性。 5.当一个有参的构造方法存在时,系统不会自动生成一个无参的构造方法。 来源: https://www.cnblogs.com/sangejava/p/11780559.html

第十周作业课程总结

耗尽温柔 提交于 2019-12-03 05:18:54
一、Java字符流的使用: 字符输入/输出流、字符文件和字符缓冲区的输入/输出流 java 中字节流的功能十分强大,几乎可以直接或间接地处理任何类型的输入/输出操作。 1、字符输入流: Reader 类是所有字符流输入类的父类,该类定义了许多方法,这些方法对所有子类都是有效的。 Reader 类的常用子类如下: CharArrayReader 类:将字符数组转换为字符输入流,从中读取字符。 StringReader 类:将字符串转换为字符输入流,从中读取字符。 BufferedReader 类:为其他字符输入流提供读缓冲区。 PipedReader 类:连接到一个 PipedWriter。 InputStreamReader 类:将字节输入流转换为字符输入流,可以指定字符编码。 与 InputStream 类相同,在 Reader 类中也包含 close() 、 mark() 、 skip() 和 reset() 等方法. Reader类中的 read() 方法 方法名及返回值类型 说明 int read() 从输入流中读取一个字符,并把它转换为 0~65535 的整数。如果返回 -1, 则表示已经到了输入流的末尾。为了提高 I/O 操作的效率,建议尽量使 用下面两种 read()方法 int read(char[] cbuf) 从输入流中读取若干个字符,并把它们保存到参数

JAVA反射机制,总结下

て烟熏妆下的殇ゞ 提交于 2019-12-03 03:44:14
1、总体概述 Java反射机制指的是在Java程序运行状态中,对于任何一个类,都可以获得这个类的所有属性和方法;对于给定的一个对象,都能够调用它的任意一个属性和方法。这种动态获取类的内容以及动态调用对象的方法称为反射机制 2、反射的用途,意义 (1)反射机制极大的提高了程序的灵活性和扩展性,降低模块的耦合性,提高自身的适应能力。 (2)通过反射机制可以让程序创建和控制任何类的对象,无需提前硬编码目标类。 (3)使用反射机制能够在运行时构造一个类的对象、判断一个类所具有的成员变量和方法、调用一个对象的方法。 (4)反射机制是构建框架技术的基础所在,使用反射可以避免将代码写死在框架中。 3、反射机制的相关类 3.1、与Java反射相关的类如下: 类名 用途 Class类 代表类的实体,在运行的Java应用程序中表示类和接口 Field类 代表类的成员变量(成员变量也称为类的属性) Method类 代表类的方法 Constructor类 代表类的构造方法 3.2、Class类: 获得类相关的方法 方法 用途 asSubclass(Class<U> clazz) 把传递的类的对象转换成代表其子类的对象 Cast 把对象转换成代表类或是接口的对象 getClassLoader() 获得类的加载器 getClasses() 返回一个数组,数组中包含该类中所有公共类和接口类的对象

单例模式的懒汉饿汉

旧巷老猫 提交于 2019-12-03 03:01:21
单例模式的三个特点:   1. 私有构造方法;   2. 内部创建静态对象;   3. 提供静态方法返回该静态对象; 单例设计模式主要有两种实现方法:饿汉式和懒汉式   饿汉式单例:在定义开始,便实例化自己。 class Singleton0 { //构造方法私有化 private Singleton0() { } //内部创建静态对象并实例化 private static Singleton0 s=new Singleton0(); //提供静态方法返回该静态对象 public static Singleton0 getsingle() { return s; } }   懒汉式单例:在第一次调用时实例化自己。 class Singleton1{ //构造方法私有化 private Singleton1() { } //内部创建静态对象 public static Singleton1 single=null; //提供静态方法返回该静态对象 public static Singleton1 getsingle() { //静态对象实例化 single=new Singleton1(); return single; } }   懒汉式与饿汉式的区别:     1. 线程安全:       饿汉式天生线程安全,可以直接用于多线程而不会出现问题。       懒汉式本身非线程安全