龙虎斗赌博 第十一节讲述类的继承数据库文件的读写图形绘制
类的继承类的多态性final的使用对象类型的转换
示意图
类的继承
格式:
[类修饰符] class 子类名 extends 父类名{ ... ...}如:
class Student extends People{ ... ...}类的继承:Object->People->Student
Java中的类只支持单继承,不支持多继承。类成员的继承:
对于继承:一个类中有成员变量和方法。
子类继承父类,可以有部分继承它的父类,也可以自己定义。
子类能继承public和protected的成员变量,不能继承private的成员变量,可以继承同包中的默认修饰符。
同理,子类继承父类的方法,能够继承public和protedted的方法,不能继承private的方法龙虎斗赌博,不能继承构造方法。成员变量的隐藏:
什么是成员变量的隐藏:
就是子类定义的成员变量与继承父类的成员变量同名时龙虎斗赌博,我们就说子类隐藏了父类的成员变量。
那么,如果访问对象就是子类重新定义的成员变量,子类方法访问的也是子类重新定义的成员变量。
方法的重写
方法的重写就是:子类定义的方法和父类中的方法全一样时,就是可以说子类重写了从父类继承的方法。
从名字,返回类型,和参数个数以及类型都完全相同。重写时,不可以降低方法的访问权限。super
关键字super,如果子类想使用父类的构造的方法,那么可以使用super的关键字,默认是由super();调用父类不带参数的构造方法。
如:super.x、super.f()调用父类的变量和方法。
类的多态性
什么是多态性?
多态性:同名的多个方法产生不同的行为。
表现形式:重载与重写。关键字final
对于final,可以修饰类,成员变量,成员方法。
修饰类,该类不能被继承修饰成员变量,给变量为常理,常理必须被赋值,不能再次被赋值如果修饰带有参数的方法,那么该参数不能被改变如果一个类或方法被final修饰,那么该类不能被继承,不能被重写Java的数据库
在Java中有Java.sql,用于提供执行数据库结构化查询语句。程序可以跨平台,可以连接不同的数据库系统。
SQL语句
关系型数据库是由多个表组成。
表是主要的操作的对象。
各表之间具有关联性。
属性值,字段,记录SQL
insert into student values("077555","vic","1444.2.2","男"); select...from...where... update student set...where... //class Class.forName("com.mysql.jdb.Student"); getConnection( )创建与数据库的连接对象; //DriverManager 用户程序和数据库系统之间维护着 数据库与驱动程序之间的连接 文件的读写
FileInputStreamFileOutputStream
FileReaderFileWriterBufferedReaderBufferedWriter
Reader类和Writer类的层次结构
Reader-BufferedReader-LineNumberReader
-CharArrayReader-FilterReader-InputStreamReader-FileReader
-PipedReader-StringReader
Writer-BufferedWriter-CharArrayWriter-FilterReader-OutputStreamReader-FileWriter-PipedWriter-StringWriter-PrintWriter
FileWriter可以在已有文件后追加内容class Demo{ public static void main(String args[]){ FileInputStream fis = null; try{ fis = new FileInputStream("e:/read.txt"); byte[] buffer = new byte[100]; fis.read(buffer,0,buffer.length); for(int i = 0;i<buffer.length;i++){ System.out.println(buffer[i]); } }catch(Exception e){ System.out.println(e); } } }FileInputStream和FileOutputStream
class Test{ public static void main(String args[]){ FileInputStream fis = null; FileOutputStream fos = null; try{ fis = new FileInputStream("e:/read.txt"): fos = new FileOutputStream("e:/write.txt"); byte[] buffer = new byte[100]; int temp = fis.read(buffer,0,buffer.length); fos.write(buffer,0,temp); //String s = new String(buffer); //s = s.trim(); //System.out.println(s); } catch(Exception e){ System.out.println(e); } } }优化:
class Demo{ public static void main(String args[]){ FileInputStream fis=null; FileOutputStream fos=null; try{ fis=new FileInputStream("e:/read.txt"); fos=new FileOutStream("e:/write.txt"); byte[] buffer=new byte[1024]; while(true){ int temp=fis.read(buffer,buffer.length); if(temp==-1){ break; } fos.write(buffer,0,temp); } }catch(Exception e){ System.out.println(e); } finally{ try{ fis.close(); fos.close(); } catch(Exception e){ System.out.println(e); } } } }Reader <-- FileReader
int read(char[] c,int off,int len)
Writer <-- FileWriter
void write(char[] c,int off,int len)public class TestChar{ public static void main(String args[]){ FileReader fr = null; FileWriter fw = null; try{ fr = new FileReader("e:/read.txt"); fw = new FileWriter("e:/write.txt"); char[] buffer=new char[100]; int temp = fr.read(buffer,0,buffer.length); fw.write(buffer,0,temp); } catch(Exception e){ System.out.println(e); } finally{ try{ } catch(Excepiton e){ System.out.println(e); } } }FileReader 和 BufferedReader
BufferedReader属于字符流,输入流,然后呢?它又是处理流
BufferedReader全称字符输入处理流class Test{ public static void main(String args[]){ FileReader fileReader = null; BufferReader bufferReader = null; try{ fileReader = new FileReader("e:/read.txt"); bufferedReader = new BufferedReader(fileReader); String line = null; while(true){ line = bufferedReader.readLine(); if(line == null){ break; } System.out.println(line); } //String line = bufferedReader.readLine(); //System.out.println(line); } catch(Exception e){ System.out.println(e); } finally{ try{ bufferedReader.close(); fileReader.close(); } catch(Exception e){ System.out.println(e); } } } }图形绘制
窗口中图形的绘制鼠标事件键盘事件绘制组件public void paint(Graphics g)
更新组件public void update(Graphics g)
重绘组件public void repaint()鼠标事件
mouseClicked(); mouseEntered(); mouseExited(); mousePressed(); mouseReleased();键盘事件
keyPressed(); keyReleased(); keyTyped();如果觉得不错,那就点个赞吧!❤️
总结
本文讲了第十一节:讲述类的继承,数据库,文件的读写,图形绘制,如果您还有更好地理解,欢迎沟通定位:分享 Android&Java知识点,有兴趣可以继续关注