构造方法

BufferedOutputStream

跟風遠走 提交于 2020-02-12 20:59:30
BufferedOutputStream 介绍 继承父亲的成员方法 java.io.OutputStream 这个抽象类是表示字节输出流的所有类的超类。 输出流接收输出字节并将其发送到某个接收器。 定义了一些子类共性的成员方法: 1.public abstract void write(int b)throws IOException 将指定的字节写入此输出流。 write的一般合同是将一个字节写入输出流 2.public void write(byte[] b)throws IOException 将b.length字节从指定的字节数组写入此输出流。 write(b)的一般合约是应该具有与电话write(b, 0, b.length)完全相同的效果。 3.public void write(byte[] b,int off,int len)throws IOException 从指定的字节数组写入len字节,从偏移off开始输出到此输出流。 write(b, off, len)的一般合同是数组b中的一些字节按顺序写入输出流; 元素b[off]是写入的第一个字节, b[off+len-1]是此操作写入的最后一个字节。 public void flush()throws IOException 刷新此输出流并强制任何缓冲的输出字节被写出。 flush的一般合同是,呼叫它表明

java 构造方法

老子叫甜甜 提交于 2020-02-12 14:21:46
1,使用new+构造方法 创建一个新的对象。 2,构造方法是定义在javal类中的一个用来初始化对象的方法 构造方法与类同名且没有返回值 公式 public name(){ //初始化代码 } 一:没有返回值 。 二:name要与类名相同。 三:可以指定参数 (也可以不指定参数)。 四:没有指定返回值类型。 定义构造方法需要另起一个文件定义构造方法,不能在main方法的类中定义这个类。 构造方法类 来源: CSDN 作者: 丶Traveller 链接: https://blog.csdn.net/QAQyebaiye/article/details/104269831

java面向对象1(学习笔记HOW2J)

本秂侑毒 提交于 2020-02-12 12:05:48
重载: 方法名相同 但是其参数类型不同 调用时根据传入的参数数量和类型判断具体执行哪个方法 public void attack() public void attack(Hero h1) public void attack(Hero h1 , Hero h2) 可变数量参数函数定义 public void attack(Hero... heros) // 在该函数内,使用操作数组的方式处理heros即可 构造方法   1. 对象实例化通过构造方法实现,如Hero h1 = new Hero(),其中Hero()为Hero类的默认构造方法。   2. 当定义类时, 显示 指定了有参构造方法时如 Hero(string name){...}; 那么默认的无参构造函数将不再存在,除非在该类中显示定义。   3. 构造方法和普通方法一样可以重载 this 关键字   1. this关键字代表当前对象。   2. this对象访问对象属性如 this.name this.age   3.通过this可以调用其构造方法 如 this(name) 传参   1. 基本类型传参 : 方法内,不能修改方法外的基本类型参数   2. 类类型传参: 类类型又被称为引用,指定义一个引用类型变量指向一个对象 如: Hero h1 = new Hero() 此时方法内就可以改变 所传引用指向对象 的属性

day25_Junit测试丶反射丶注解

隐身守侯 提交于 2020-02-11 22:36:40
软件测试 查询百度百科: 软件测试(英语: Software Testing ),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较 过程 。软件测试的经典定义是:在规定的条件下对程序进行 操作 ,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。 测试的分类 黑盒测试: 不需要写代码,给输入值,看程序是否能够输出期望的值。 白盒测试: 需要写代码的。关注程序具体的执行流程。Junit测试属于白盒测试中的一种。 现在我们拿到一个需求,需要测试一下Junit包下的Calculator类代码编写是否正确。代码如下 package Junit; /** * 计算器类 */ public class Calculator { /** * 加法 * @param a * @param b * @return */ public int add(int a, int b){ return a +b; } /** * * @param a * @param b * @return */ public int sub(int a,int b){ return a -b; } } 按照以前的知识,我们需要在测试类中,创建Calculator类的对象,在调用Calculator类中编写的方法

Java基础笔试题

╄→гoц情女王★ 提交于 2020-02-11 19:56:32
1、指出Servlet及jsp的作用及区别,并且说明Servlet的生命周期? 1.JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类。 JSP 工作原理: JSP页面在执行的时候都会被服务器端的JSP引擎转换为Servelet(.java),然后又由JSP引擎调用Java编译器,将Servelet(.java)编译为Class文件(.class),并由Java虚拟机(JVM)解释执行。下面验证这一点: 有一个JSP页面Test.jsp,在浏览器地址栏中输入http://localhost:8080/Test.jsp,将会出现执行结果。同时在%CATALINA_HOME%/work/Catalina/localhost下多出两个文件:_Test_jsp.java和_Test_jsp.class,他们分别就是Servelet和Class文件。 2.Servlet的应用逻辑是在Java文件中,从Java代码中动态输出HTML,并且完全从表示层中的HTML里分离开来。而JSP的情况是Java和HTML可以组合成一个扩展名为.jsp的文件。JSP侧重于视图,Servlet主要用于控制逻辑。 2、HTTP请求的GET与POST方式的区别? GET 请求,请求的数据会附加在 URL 之后,以?分割 URL

学习java习惯

五迷三道 提交于 2020-02-11 19:09:52
1. 抽象方法子类添加快捷键:Ctrl+1 2.非静态内部类 语法: new 外部类().new 内部类() eg: Hero hero = new Hero(); HeroScore score = hero.new HeroScore(); 3.默认方法 default加在接口中 可以在连接该接口的子类中加入default方法 通过这种手段,就能够很好的扩展新的类,并且做到不影响原来的类 4.父类构造方法在子类构造方法之前进行 5.super 若父类提供两个构造方法,一个有参,一个无参 public Hero(){ System.out.println("Hero的无参的构造方法 ");} public Hero(String name){ System.out.println("Hero的有一个参数的构造方法 "); this.name = name; } 1 2 3 4 5 6 7 子类实例化时, 默认掉用父类无参构造方法(因为可能父类没有提供构造方法) 若此时需要调用父类带参构造方法 用super(name); 值得注意的是,super是用来调用指定构造方法,而非有参 若super(); 则调用无参,即可认为子类构造方法中,本身就带有super(); eg:super(1,2)super(1) 且括号内数做其父类的参数 6.instanceof 7. Math

计算机二级—java语言概论02

会有一股神秘感。 提交于 2020-02-10 16:57:55
计算机二级—java语言概论02 1. 对象的创建,初始化,使用和删除 类是对象的抽象,对象是类的实例。 1.1对象的创建 创建步骤是先声明一个对象变量的类型和名字,再利用关键字new运算符和一个构造方法实例化一个对象。 例如:类名 对象名 = new 类名(); 程序在new关键字实例化一个对象后才会给对象分配内存,并调用对象的构造方法,返回对象的引用。可以多次通过new实例化一个类,获得多个不同的实例化对象,这些实例化对象之间的状态是相互独立的。 1.2实例变量 java允许在创建实例变量是没有初始值,但要求在使用前必须赋予初始值。除了把一个实例对象赋予具体的初始值外,也可以赋予为null。从概念上讲,null引用值对应着一个空地址,此值表示变量没有引用任何对象,应该注意,给变量赋予null值,不同于没有对变量进行初始化。被赋予null值的对象可以用来对别的变量进行初始化。null值表示变量没有包含任何信息。 1.3对象的初始化——构造方法 构造方法要求与类名完全相同,无返回值。 使用构造函数的好处是:避免了每次创建对象后都调用对象的初始化方法。 构造方法的特点: (1)构造方法名与类名必须完全相同 (2)构造方法是为了给对象进行赋值,所以没有返回值,但不用void来声明。 (3)构造方法不能直接来调用,只能通过new自动调用。 (4)构造方法可由编程人员在类中定义

学习java的收获

最后都变了- 提交于 2020-02-10 16:38:32
1. 抽象方法子类添加快捷键:Ctrl+1 2.非静态内部类 语法: new 外部类().new 内部类() eg: Hero hero = new Hero(); HeroScore score = hero.new HeroScore(); 3.默认方法 default加在接口中 可以在连接该接口的子类中加入default方法 通过这种手段,就能够很好的扩展新的类,并且做到不影响原来的类 4.父类构造方法在子类构造方法之前进行 5.super 若父类提供两个构造方法,一个有参,一个无参 public Hero(){ System.out.println("Hero的无参的构造方法 ");} public Hero(String name){ System.out.println("Hero的有一个参数的构造方法 "); this.name = name; } 子类实例化时, 默认掉用父类无参构造方法(因为可能父类没有提供构造方法) 若此时需要调用父类带参构造方法 用super(name); 值得注意的是,super是用来调用指定构造方法,而非有参 若super(); 则调用无参,即可认为子类构造方法中,本身就带有super(); eg:super(1,2) super(1) 且括号内数做其父类的参数 6.instanceof 7. Math.random() 取0-1 Math

JAVA抽象类和接口

别来无恙 提交于 2020-02-10 13:25:59
注意事项: 1、非抽象类不能包含抽象方法;在一个有抽象类扩展出来的非抽象类中,所有的抽象方法都必须实现,即使这个子类不使用它们。抽象方法是非静态的。 2、抽象类不能用new操作符实例化,但仍然可以定义它的构造方法,这种构造方法将在它子类的构造方法中调用。 3、子类可以声明为抽象的,即使它的父类是具体的;子类可以覆盖它父类的方法,将其声明为abstract。这种方法非常少用,但是当父类中方法的实现在子类中无效时,这种方法就有用了,这种情况下,子类必须声明为抽象的。 4、不能用new操作符创建抽象类的实例,但是,抽象类可以用作数据类型: GeometricObject[] objects=new GeometricObject[10]; 5、在接口中,所有的数据域都是public finial static的,所有的方法都是public abstract的,由于这个原因,Java可以忽略这些修饰符,下面的声明是等价的: public interface T1{ public static final int K=1; public abstract void p(); } 等价于 public interface T1{ int K=1; void p(); } 6、利用extends关键字,接口可以继承其他接口,例如: public interface NewInterface

day19_File丶递归

巧了我就是萌 提交于 2020-02-09 17:04:07
File类 概述 File类是文件和目录路径名的抽象表示形式。 java把电脑中的文件和文件夹(目录)封装为了一个File类,我们可以使用File类对文件和文件夹进行操作我们可以使用File类的方法,创建一个文件/文件夹或删除文件/文件夹或获取文件/文件夹或判断文件/文件夹是否存在或对文件夹进行遍历或获取文件的大小。File类是一个与系统无关的类,任何的操作系统都可以使用这个类中的方法 。 常用的静态变量 public static String pathSeparator 与系统有关的路径分隔符,为了方便,它被表示为一个字符串。 public static char pathSeparatorChar 与系统有关的路径分隔符。 public static String separator 与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。 public static char separatorChar 与系统有关的默认名称分隔符。 代码演示 package demo01; import java.io.File; public class Demo01File { public static void main(String[] args) { /* 注意:工作中获取操作路径:路径不能写死了,一定要使用下面的方式获取 "C:"+File.separator+