- 浏览: 53603 次
- 性别:
- 来自: 北京
-
文章分类
最新评论
-
zhuzhuzhu222:
好 文章 顶下
Servlet+AJAX实现数据处理显示 -
hareamao:
if the th thread finishes befor ...
线程学习一,wait和notify实现简单的同步 -
GreatNeyo:
xiaolongfeixiang 写道请问你的"co ...
数据库缓冲池在tomcat6.0中的配置 -
xiaolongfeixiang:
请问你的"com.microsoft.sqlserv ...
数据库缓冲池在tomcat6.0中的配置
/*
定义一个宠物类(Pet),它有两个方法:叫cry(),吃东西eat(),定义宠物的子类狗(Dog),猫(Cat),覆盖父类的cry(),eat()方法,
里面写System.out.println("猫吃了鱼")这样的打印语句,另外狗有自己的方法看门guardEntrance(),猫自己独有的方法捉老鼠huntMice()
定义一个Test类,在main中定义两个Pet变量,pet1,pet2,采用引用转型实例化Dog,Cat,分别调用Pet的cry(),eat();
* (2)将Pet引强制转换为具体的Dog,Cat,在调Dog的guardEntrance(),Cat的huntMice()(提示:先用instanceof进行类型判断)
* (3)(思考)修改Test类,添加喂养宠物feedPet(Pet pet)的方法,在feedPet中调cry(),eat()方法,实例化Test类,再实例化狗 Dog dog = new Dog(),
猫 Pet cat = new Cat(), Test分别调feedPet()方法分别传参数cat,dog,思考这两种方式的异同,深入理解引入转型和多态
*/
package EighthWork;
/**
*
* @author Administrator
*/
public abstract class PetTest
{
//这里体现的是多态的实现机制,通过传入参数的对象不同来实现多态
public void feedPet(Pet pet)
{
System.out.print("\n");
pet.cry();
pet.eat();
}
public static void main(String[] args)
{
//采用转型实例化Dog和Cat
//属性和方法的调用是不同的,属性跟着父类引用的类型一致,方法与实例的引用一致
//也就是属性是在编译时就由父类决定 ,方法在由运行时决定
Pet pet1 = new Dog();
pet1.cry();
pet1.eat();
pet1 = new Cat();//实现动态多态的要求:继承、实例名字相同、
pet1.cry();
pet1.eat();
//将Pet强制转换为具体的Dog和Cat
// Pet pet1 = new Dog();
// Pet pet2 = new Cat();
// if(pet1 instanceof Dog)
// {
// Dog dog = (Dog)pet1;
// dog.guardEntrance();
// }
// if(pet2 instanceof Cat)
// {
// Cat cat = (Cat)pet2;
// cat.huntMice();
// }
//通过传递对象参数的引用实现多态
// PetTest petTest = new PetTest();
// Dog dog = new Dog();
// Pet cat = new Cat();
// petTest.feedPet(dog);
// petTest.feedPet(cat);
}
}
============================================
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package EighthWork;
/**
*
* @author Administrator
*/
public abstract class Pet
{
public void cry() //抽象类中也允许有非抽象方法
{
System.out.print("宠物在叫");
}
public void eat()
{
System.out.print("宠物在吃");
}
//抽象类都是应用于继承,子类应该重写抽象类中所有的抽象方法
public abstract void PetEat();
}
========================================
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package EighthWork;
/**
*
* @author Administrator
*/
public class Dog extends Pet
{
public Dog()
{
System.out.println("养了一只狗");
}
public void cry()
{
System.out.println("狗的叫声:汪汪...");
}
public void eat()
{
System.out.println("狗啃了一根骨头");
}
public void guardEntrance()
{
System.out.println("宠物狗在看门");
}
public void PetEat()
{
}
}
=======================================
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package EighthWork;
/**
*
* @author Administrator
*/
public class Cat extends Pet
{
public Cat()
{
System.out.println("养了一只猫");
}
public void cry()
{
System.out.println("猫在叫:喵喵...");
}
public void eat()
{
System.out.println("猫吃了一条鱼");
}
public void huntMice()
{
System.out.println("宠物猫抓了一只老鼠");
}
public void PetEat()
{ }
}
定义一个宠物类(Pet),它有两个方法:叫cry(),吃东西eat(),定义宠物的子类狗(Dog),猫(Cat),覆盖父类的cry(),eat()方法,
里面写System.out.println("猫吃了鱼")这样的打印语句,另外狗有自己的方法看门guardEntrance(),猫自己独有的方法捉老鼠huntMice()
定义一个Test类,在main中定义两个Pet变量,pet1,pet2,采用引用转型实例化Dog,Cat,分别调用Pet的cry(),eat();
* (2)将Pet引强制转换为具体的Dog,Cat,在调Dog的guardEntrance(),Cat的huntMice()(提示:先用instanceof进行类型判断)
* (3)(思考)修改Test类,添加喂养宠物feedPet(Pet pet)的方法,在feedPet中调cry(),eat()方法,实例化Test类,再实例化狗 Dog dog = new Dog(),
猫 Pet cat = new Cat(), Test分别调feedPet()方法分别传参数cat,dog,思考这两种方式的异同,深入理解引入转型和多态
*/
package EighthWork;
/**
*
* @author Administrator
*/
public abstract class PetTest
{
//这里体现的是多态的实现机制,通过传入参数的对象不同来实现多态
public void feedPet(Pet pet)
{
System.out.print("\n");
pet.cry();
pet.eat();
}
public static void main(String[] args)
{
//采用转型实例化Dog和Cat
//属性和方法的调用是不同的,属性跟着父类引用的类型一致,方法与实例的引用一致
//也就是属性是在编译时就由父类决定 ,方法在由运行时决定
Pet pet1 = new Dog();
pet1.cry();
pet1.eat();
pet1 = new Cat();//实现动态多态的要求:继承、实例名字相同、
pet1.cry();
pet1.eat();
//将Pet强制转换为具体的Dog和Cat
// Pet pet1 = new Dog();
// Pet pet2 = new Cat();
// if(pet1 instanceof Dog)
// {
// Dog dog = (Dog)pet1;
// dog.guardEntrance();
// }
// if(pet2 instanceof Cat)
// {
// Cat cat = (Cat)pet2;
// cat.huntMice();
// }
//通过传递对象参数的引用实现多态
// PetTest petTest = new PetTest();
// Dog dog = new Dog();
// Pet cat = new Cat();
// petTest.feedPet(dog);
// petTest.feedPet(cat);
}
}
============================================
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package EighthWork;
/**
*
* @author Administrator
*/
public abstract class Pet
{
public void cry() //抽象类中也允许有非抽象方法
{
System.out.print("宠物在叫");
}
public void eat()
{
System.out.print("宠物在吃");
}
//抽象类都是应用于继承,子类应该重写抽象类中所有的抽象方法
public abstract void PetEat();
}
========================================
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package EighthWork;
/**
*
* @author Administrator
*/
public class Dog extends Pet
{
public Dog()
{
System.out.println("养了一只狗");
}
public void cry()
{
System.out.println("狗的叫声:汪汪...");
}
public void eat()
{
System.out.println("狗啃了一根骨头");
}
public void guardEntrance()
{
System.out.println("宠物狗在看门");
}
public void PetEat()
{
}
}
=======================================
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package EighthWork;
/**
*
* @author Administrator
*/
public class Cat extends Pet
{
public Cat()
{
System.out.println("养了一只猫");
}
public void cry()
{
System.out.println("猫在叫:喵喵...");
}
public void eat()
{
System.out.println("猫吃了一条鱼");
}
public void huntMice()
{
System.out.println("宠物猫抓了一只老鼠");
}
public void PetEat()
{ }
}
发表评论
-
线程学习二,notify和wait实现消费者-生产者同步问题
2010-07-27 02:06 1139/* 生产者-消费者的问题,对象有学生,家长,银行,AT ... -
线程学习二,ReentrantLock.Lock实现线程互斥
2010-07-26 12:57 943/* ReentrantLock.Lock实现线程互斥 ... -
线程学习一,wait和notify实现简单的同步
2010-07-26 10:56 953/* * 实现一个简单的wait-notify的线程同步问题 ... -
一阶段-twentithWork-数据库操作
2009-12-02 17:26 932/* 在任意数据库中建立表 userinfo 包含字段 Use ... -
一阶段-sevenWork-定义一个名为Vehicles(交通工具)的基类
2009-12-02 17:22 1852/* 定义一个名为Vehicles(交通工具)的基类,该类中应 ... -
一阶段-nineteenthWork-数据库操作
2009-12-02 17:16 698/* 在任意数据库中建立表 userinfo 包含字段 Use ... -
一阶段-fourteenWork-六-使用Random类模拟摇色子游戏
2009-12-02 17:11 1454/* 六.使用Random类模拟摇色子游戏.共5粒色子,分别显 ... -
一阶段-fourteenWork-5-利用Random类
2009-12-02 17:08 798/* 五.利用Random类,随机生成一个int 随机数,lo ... -
一阶段-fourteenWork-3-使用Calendar类
2009-12-02 17:06 922/* 三.使用Calendar类,编写程序求出你的出生的那一天 ... -
一阶段-fourteenWork-2-使用Date的Date(int year, int month, int date) 构造方法
2009-12-02 17:04 1215/* 二,使用Date的Date(int year, int ... -
一阶段-fourteenWork-1-Date类
2009-12-02 17:02 840/* 一.使用Date类求获取当前日期,分别使用下以下格式打印 ... -
一阶段-fourteenWork-4-Calendar类
2009-12-02 17:01 889/* 四. 使用Calendar类,打印出当前月的日历表,效果 ... -
一阶段-TwelveThWork-1-回文串
2009-12-02 16:58 752/* 练习内容一:回文串 编写程序CheckPalindro ... -
一阶段-TwelveThWork-2-随机整数
2009-12-02 14:03 882/* 练习内容二:猜数字 编写程序Guess,随机地产生一个 ... -
一阶段-SixteenthWork-读写文件
2009-12-02 12:40 845/* 在F盘下建立一个名为“学生成绩单”的目录,在里面新建一个 ... -
一阶段-SeventeenWork-4-读取txt文件
2009-12-02 12:34 901/* 4、接收两个命令行参数,用来代表用户名以及密码!判断是否 ... -
一阶段-SeventeenWork-3-用户和密码信息保存到test.txt文件中
2009-12-02 12:33 1000/* * 3、接收命令行参数输入用户名/密码,并将用户和密码 ... -
一阶段-FifteenthWork-3-HashMap对象
2009-12-02 12:30 967/* 3. 创建一个HashMap对象,并在其中添加一些学员的 ... -
一阶段-FifteenthWork-2-使用ArrayList
2009-12-02 11:39 958/* 2. 编写一个程序,使用ArrayList存储客户的邮 ... -
一阶段-EighteenthWork-2-数据库操作
2009-12-02 11:30 860/* 二.在SQL Server 2005中附加student ...
相关推荐
+-------------+-------------+------+-----+---------+-------+ 4 rows in set (0.00 sec) · 6、 往表中加入记录 我们先用SELECT命令来查看表中的数据: mysql> select * from mytable; Empty set (0.00 sec...
字节缓冲流与字符流概述 字节缓冲流是 Java 中的一种流类型,它可以提高读写效率。字节缓冲流可以分为字节缓冲输出流和字节缓冲输入流两种。字节缓冲输出流可以将数据写入到文件中,而字节缓冲输入流可以从文件中...
在Java中,IO流分为两大类:字节流和字符流,每种流又有输入流和输出流之分,分别用于数据的读取和写入。 1. **字节流**: - 字节流处理的是8位的字节数据,是最基本的流类型。Java中的`InputStream`和`...
Java 流在处理上分为字符流和字节流。字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符、字符数组或字符串,而字节流处理单元...字符流(一次可以处理一个缓冲区)一次操作比字节流(一次一个字节)效率高。
SecureCRT是一款广泛的终端仿真:支持 SSH1,SSH2,Telnet,RLogin,Serial,和 TAPI 协议。 本文件为4个执行文件,分别是32位和64位的SecureCRT安装器和Keygen生成器。 64位亲测可用,32位暂未测试使用。 ————...
ADO助手---一个获取ADO连接字符串,测试SQL命令的辅助软件 2010-09-06 +初始版本发布 ADO助手---一个获取ADO连接字符串,测试SQL命令的辅助软件 2010-09-06 +初始版本发布 2011-11-09 -修复有时候用DataGrid...
day09-字节缓冲流&字符流
1、博客地址:https://blog.csdn.net/gongjin28_csdn/article/details/121636558 ...代码功能涉及字节、字符、字符串、文本文件、图片、音频、视频。演示错误用法和经典用法。 4、代码的结构可查看README文件。
本教程将详细介绍Java IO中的字节流、字符流、缓冲流以及转换流,并通过IODemo实例来展示它们的用法。 ### 1. 字节流 字节流是Java中最基础的流类型,用于处理以字节为单位的数据。字节流分为输入流(InputStream...
- **字符流**使用缓冲区,提高了文本数据的处理效率,特别适合处理Unicode字符。 - 缓冲区可以显著提高数据处理的速度,尤其是在频繁访问文件时。 #### 六、拓展知识点 - **缓冲流(BufferedInputStream/...
1. **数据单位**:字节流处理的是字节,字符流处理的是字符。 2. **编码**:字节流不关心数据的编码,而字符流必须指定字符集编码,以确保正确地读写文本数据。 3. **性能**:字符流的性能通常比字节流慢,因为它...
1. **InputStreamReader与OutputStreamWriter**: 这两个类是字符流的基础,它们分别用于读取和写入字符。InputStreamReader是字节流到字符流的桥梁,它依赖于一个字节流(如FileInputStream)并根据指定的字符集解码...
2023-04-06-项目笔记-第一阶段-4.4.1 局部变量的作用域 4.5.1 字面常量 4.5.2 const 修饰的常变量 4.5.3 #define 定义的标识符常量 4.5.4 枚举常量 5.1 字符串 5.1.1字符串使用 5.2 转义字符 5.2.1 常见的转义字符
字符缓冲流Bufferd,直接粘贴到eclipse或者cmd运行即可
+-------+---------+-----------+--------+--------+ ¦ hello ¦ "hello" ¦ ""hello"" ¦ hel'lo ¦ 'hello ¦ +-------+---------+-----------+--------+--------+ mysql> SELECT "hello", "'hello'", "''hello'...
59-IO流(转换流的字符编码).avi
- `BufferedReader`和`BufferedWriter`是缓冲流,提供了一次读写多个字符的能力,提高了效率。 - `PrintWriter`不仅具有写入功能,还支持格式化输出。 4. **文件写入的基本步骤** - 创建字符输出流对象,例如`...
+---------------+ | 代码区 | +---------------+ | 全局区 | +---------------+ | 堆区 | +---------------+ | 栈区 | +---------------+ ``` 在这个内存图中,代码区存放CPU执行的机器指令,全局区存放...
在Java中,除了字节流之外,还有一类流称为字符流。字符流主要用于处理文本数据,它能够避免字节流读取中文等多字节字符时可能出现的乱码问题。字符流是按照字符为单位进行读写的,每个字符通常占用两个字节。Java...
`get-stream`库提供了一种简洁的方法,将流数据转换为字符串、缓冲区(Buffer)或者数组,使得对流数据的处理变得更加方便。这个库由Sindre Sorhus创建,他在Node.js社区以其高质量的开源工具而闻名。 首先,让我们...