构造方法

JAVA 实验5 类的多态性

匿名 (未验证) 提交于 2019-12-02 21:53:52
桂 林 理 工 大 学 实 验 报 告 班级 软件16-1班 学号 3162052051116 姓名 张识虔 同组实验者 实验名称 类的多态性 日期 2018年06 月15日 一、实验目的: 理解类的多态性,掌握方法的继承、重载和覆盖,掌握如何从键盘输入数据以及多重循环的使用。 二、实验环境: 三、实验内容: (一)类的多态性练习 1. 方法的重载 方法的重载是指对同名方法的不同使用方式。 1) 程序功能:对不同的数进行排序输出。在IntSort 类中定义2 个同名的方法sort。 2) 编写KY5_1.java 文件,源代码如下。 class IntSort { public String sort ( int a , int b ) { if ( a > b ) return a + " " + b ; else return b + " " + a ; } public String sort ( int a , int b , int c ) { int swap ; if ( a < b ) { swap = a ; a = b ; b = swap ; } if ( a < c ) { swap = a ; a = c ; c = swap ; } if ( b < c ) { swap = b ; b = c ; c = swap ; } return a + " "

java文件调用读写

匿名 (未验证) 提交于 2019-12-02 21:53:52
FileInputStream 该流用于从文件读取数据,它的对象可以用关键字 new 来创建。 有多种构造方法可用来创建对象。 可以使用字符串类型的文件名来创建一个输入流对象来读取文件: InputStream f = new FileInputStream ( " C:/java/hello " ) ; 也可以使用一个文件对象来创建一个输入流对象来读取文件。我们首先得使用 File() 方法来创建一个文件对象: File f = new File ( " C:/java/hello " ) ; InputStream out = new FileInputStream ( f ) ; 创建了 InputStream 对象,就可以使用下面的方法来读取流或者进行其他的流操作。 序号 方法及描述 1 public void close() throws IOException{} 关闭此文件输入流并释放与此流有关的所有系统资源。抛出 IOException 异常。 2 protected void finalize() throws IOException {} 这个方法清除与该文件的连接。确保在不再引用文件输入流时调用其 close 方法。抛出 IOException 异常。 3 public int read (int r)throws IOException{} 这个方法从

java基础-构造方法与setget方法

匿名 (未验证) 提交于 2019-12-02 21:53:52
格式: -方法名与类名一致 -没有返回值类型,void也没有 -没有具体的返回值 作用: -创建对象后,给对象进行初始化值 -构造方法没有参数,赋默认值 -构造方法有参数,赋参数值 new之后,在堆中开辟空间,给成员变量赋默认值 注意事项:如果你不提供构造方法,系统默认提供无参构造方法; 如果提供构造方法,系统不会提供无参构造方法; 当在类中提供了有参构造后,必须要写一个无参构造方法; 可以重载构造方法。 有参构造方法 只能赋值不能修改 setXxx()赋值或者修改都可以 例如: Student.java public class Student { String name; int age; public void setName (String name) { this .name = name; } public int getAge () { return age; } public void setAge ( int age) { this .age = age; } public String getName () { return name; } public Student () { } public Student (String name, int age) { this .name = name; this .age = age; } } Test.java

JeeSite数据分页与翻页

匿名 (未验证) 提交于 2019-12-02 21:53:52
  本文章介绍的是JeeSite开源项目二次开发时的一些笔记,对于没有使用过JeeSite的可以不用往下看了,因为下面的代码是跟JeeSite二次开发相关的代码,不做JeeSite的二次开发,以下代码对您无用,在这里友情提醒,避免浪费您宝贵的时间。   翻页功能在各种项目中都会用到,在JeeSite开源项目中使用翻页也非常的容易,只要在配置文件中进行就可以就可以使用,系统的默认值为30页。   配置文件在src\main\resources\jeesite.properties文件中,配置如下: 1 page.pageSize=30   但是这种配置并不能满足所有的分页要求,也就是说在不同的列表中分页的条数是不同的。如果在配置文件中修改分页条数,那么会影响到整个项目的分页,它是一个全局的配置参数,这样就很不方便了。 JeeSite手册的分页   在做项目的时候,由于使用JeeSite的默认页数无法满足项目的需求,因为不可能每个列表页都以30条记录作为一页,因此只能看手册。看手册又没有具体理解如何使用,JeeSite手册中最分页的描述如下: 1 // 设置分页参数,则分页,如果不设置,则根据条件获取全部 2 user.setPage(page); 3 // 执行分页查询 4 page.setList(userDao.findPage(user));   按照手册的方法简单的尝试了一下

单例模式实现方法之懒汉式、饿汉式

匿名 (未验证) 提交于 2019-12-02 21:53:32
Singleton 单例模式是一种经常在项目开发中使用的程序设计模式,它用于创建一个全局共享的实例对象。该实例对象在整个应用程序中只有一个,不会出现更多的该实例对象。 实现原理就是将类的构造方法私有化,即使用private修饰符来修饰构造方法,这样外部就不能使用构造方法创建对象了,本类内部还是能够创建对象的,所以,可以创建一个本类类型的成员变量来保存本类的唯一对象,然后提供属性访问器方法获取这个唯一的实例,但是每次获取的都是同一个对象,而不是重新创建的。 һ. 懒汉式:当程序第一次访问单例模式实例时才进行创建 。 public class Lazy { public static Lazy instance = null; //本类的唯一实例 private Lazy() { //构造方法私有化 } if(instance==null) instance = new Lazy(); return instance; } } 二. 饿汉式:在程序启动或单例模式类被加载的时候,单例模式实例就已经被创建。 public class Hungry { private static Hungry instance = new Hungry();//本类的唯一实例 private Hungry() { //构造方法私有化 } public static Hungry getInstance()

Java 从入门到进阶之路(八)

匿名 (未验证) 提交于 2019-12-02 21:52:03
在之前的文章我们介绍了一下 Java 中的重载,接下来我们看一下 Java 中的构造方法。 我们之前说过,我们在定义一个变量的时候,java 会为我们提供一个默认的值,字符串为 null,数字为 0。如下: 1 public class HelloWorld { 2 public static void main ( String [] args ) { 3 User e = new User (); // 创建一个 User 对象 4 e . print (); // 姓名:null 年龄:0 性别:null 5 } 6 } 7 8 class User { 9 String name ; 10 int age ; 11 String gender ; 12 13 void print () { 14 System . out . print ( "姓名:" + name + "年龄:" + age + "性别:" + gender ); 15 } 16 } 但是我们往往在使用的时候并不是想用默认的值,而是自己去定义我们想要的值,如下: 1 public class HelloWorld { 2 public static void main ( String [] args ) { 3 // 创建一个 zs 的 User 对象 4 User zs = new User ();

Lombok的使用

匿名 (未验证) 提交于 2019-12-02 21:52:03
当我们创建一个javaBean的时候,往往会做一些重复性的事情,比如:getter和setter方法,toString方法,构造函数等等,如果只是有一两个类的话我们大可使用IDE来自动生成,但是如果类有很多的话我们不可能来手动生成,这样很浪费时间,并且会造成很多冗余的代码。而Lombok可以让我们使用注解,很轻松的完成这个事情。 在idea的Plugins中进行搜索Lombok进行安装 <dependency> <groupId> org.projectlombok </groupId> <artifactId> lombok </artifactId> <optional> true </optional> </dependency> 在安装插件时,可以看到介绍上有很多注解 顾名思义,这两个注解就是用来生成getter和setter方法的。 如图所示, 左边是java代码,右边是编译之后的 。可以看到编译之后有了getter和setter方法。而那个无参构造是因为类本身就会有个默认的无参构造。 @AllArgsConstructor可以用来生成全参的构造方法,它有3个属性,其中access可以用来修改访问修饰符 @NoArgsConstructor可以用来生成无参构造方法,它有4个属性,其中access可以用来修改访问修饰符 @RequiredArgsConstructor

Java自定义异常类

匿名 (未验证) 提交于 2019-12-02 21:52:03
Java自定义异常类   尽管Java已经预定义了许多异常类,但有时还需要定义自己的异常。编写自定义异常类实际上是继承一个API标准异常类,用新定义的异常处理信息覆盖原有信息的过程。常用的编写自定义异常类的模式如下:   当然也可选用Throwable作为父类。其中无参数构造方法为创建缺省参数对象提供了方便。第二个构造方法将在创建这个异常对象时提供描述这个异常信息的字符串,通过调用超类构造方法向上传递给父类,对父类中的toString()方法中返回的原有信息进行覆盖。   下面举个具体例子,假设程序中需要验证用户输入的数据值必须是正值。可以按照上面的模式编写自定义异常类如下:   有了上述自定义异常类,在程序中就能使用它。   假设编写程序要求用户输入圆半径,计算圆面积。该程序要求半径值应该为正值。程序代码如下:   运行程序,假设输入一个负值,程序会抛出 NegativeValueException 异常。 来源:博客园 作者: 一曲、长歌 链接:https://www.cnblogs.com/yqcg/p/11541571.html

javaSE面向对象2

匿名 (未验证) 提交于 2019-12-02 21:52:03
1 继承 继承的概念 继承也叫传承,也就是自上而下的传递;当我们在描述某些事物的时候 发现 有些事物具有重复的属性和行为,那么 就可以将这些重复的东西进行抽取 组合成一个新的类别,这个新的类别称之为父类。 通过extends关键字可以实现类与类的继承: class子类名 extends 父类名{ } 继承的好处和弊端 提高了代码的复用性:多个相同的成员可以方法放到同一个类中; 提高了代码的为属性:如果功能的代码需要修改,修改一处即可; 让类与类之间产生了关系,是多态的前提:其实这也是继承的一个弊端,类的耦合性很强; 开发原则:低耦合,高内聚 耦合:类与类的关系; 内聚:就是自己完成某件事情的能力。 注意 和传统的理解不同,子类并不是父类的一个子集。实际上,一个子类通常比它的父类包含更多的信息和方法。 父类中的私有数据域在该类之外是不可访问的。因此,不能在子类中直接使用。但是,如果父类中定义了公共的访问器 / 修改器,那么可以通过这些公共的访问器 / 修改器来访问和修改它们。 不是所有的 “是一种”(isa) 关系都该用继承来建模。例如:正方形是一种矩形,但是不应该定义一个 Square 类来扩展 Rectangle 类,因为 width 和 height 属性并不适合于正方形。应该定义一个继承自 CeometricObject 类的 Square 类,并为正方形的边定义一个

DBUtils框架的使用(上)

匿名 (未验证) 提交于 2019-12-02 21:52:03
昨天做了这么多的铺垫,当然就是为了引出今天的DBUtils框架了,它的实现原理跟我们编写的简易框架是类似的。 话不多说,进入正题。 commons-dbutils 是 Apache 组织提供的一个开源 JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的工作量,同时也不会影响程序的性能。因此dbutils成为很多不喜欢hibernate的公司的首选。 jar包下载地址:链接:https://pan.baidu.com/s/1BKtq_VoBw52qyIJr6c_CZg 提取码:skrf 复制这段内容后打开百度网盘手机App,操作更方便哦 API介绍: org.apache.commons.dbutils.QueryRunner --- 核心操作类 org.apache.commons.dbutils.ResultSetHandler org.apache.commons.dbutils.DbUtils --- 工具类 QueryRunner 类简单化了SQL查询,它与ResultSetHandler组合在一起使用可以完成大部分的数据库操作,能够大大减少编码量。 QueryRunner类提供了两个构造方法: 默认的构造方法 需要一个 javax.sql.DataSource 来作参数的构造方法。