java学习随记——首记
Java乱码:
主要根本原因是使用错误的字符集解码字节流或者将给定的字符串用错误的字符集编码成错误的字节流
常用字符集:ISO8859-1,GB2312,GBK,GB18030,UNICODE(UTF-8,UTF-16,UTF-32)
源码时————系统默认字符集
编译时————javac用默认字符集去读取然后将源码内容转换为UTF-8,也可以在编译是指定encoding .class
运行时————这个过程中会涉及从外部读入和向外部输出(程序内部都是使用UTF-8,当涉及外部是JVM会根据系统属性file.encoding
Singleton模式:
定义:Java应用程序中,一个类Class只有一个实例存在。外部获得实例时不能使用构造函数 由getinstance获得且需要内部创建本身实例
有两种方式:懒汉和饿汉
如: public class Singleton {
private Singleton(){}
//在自己内部定义自己一个实例,是不是很奇怪?
//注意这是private 只供内部调用
private static Singleton instance = new Singleton();
//这里提供了一个供外部访问本class的静态方法,可以直接访问
public
static Singleton getInstance() {
return instance;
}
}
Overload和Override的区别:
方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。
Select salClass from sal where (select empsal form emp where empid=1) as test minSal< test and maxSal>test
软件开发周期:
1、 与用户沟通,项目基本需求了解
2、 项目可行性分析
3、 需求分析
4、 开发
5、 维护