java 1
慕之歌
这个作者很懒,什么都没留下…
展开
-
易错标记
封装和单例封装是对属性私有化,单例是对构造方法私有化静态变量和成员变量前者用static修饰,初始化完成赋值;后者不用static修饰,实例化完成赋值 静态方法只能访问静态变量,this和super也不能用 构造方法中,this super不能共存AnimalO ani=new AnimalO();AnimalO ani1=new Dog();//多态相对于继承类来说...原创 2018-11-13 11:10:20 · 111 阅读 · 0 评论 -
String类
两种创建字符串的区别String str1="123";创建时,先在常量池中找是否有“123”这个字符串,若有直接在栈中开辟内存并在该内存中存储常量池中存有该字符串的地址。若此时,String str2="123";则str1与str2指向的是常量池中的同一个地址,该地址存放了字符串“123” String str1=new String(); 每实例化一个对象便在堆内存中开辟内存...原创 2018-11-22 16:31:51 · 142 阅读 · 1 评论 -
异常
分类:检查异常:需要导入文件或进行读取发生的异常其他异常:其他的异常抛异常只能有一个,除非在判断语句中可以存在多个异常处理的两种方式直接处理:try{可能发出异常的语句}catch(异常类 对象){e.printStackTrace();//输出语句}对异常进行处理,触发异常后可以继续执行后面语句public static void m2() throws FileNot...原创 2018-11-24 14:05:21 · 166 阅读 · 0 评论 -
工厂设计模式
简单模式自主选择零件,自由搭配Cpu、MainBoard接口,进行多态public interface MainBoard {} public interface Cpu {} 2.实现接口public class IntelCpu implements Cpu { }public class AmdCpu implements Cpu {}...原创 2018-11-24 21:33:25 · 97 阅读 · 4 评论 -
异常的传递
public class ClassKeCheng2 { public static void main(String[] args) throws FileNotFoundException {//调用处处理异常 System.out.println("insering---------"); m1(); System.out.println("...原创 2018-11-24 22:03:57 · 165 阅读 · 1 评论 -
一个特殊的类:String
String作为一个特殊的类,介于常量与类对象之间,它的一些属性、方法也有些不同,总结一下吧!内存:String有两种赋值方法,这两种赋值方法的内存处理也有不同String str1=new String("123");这种方式,存放在堆内存中;每new 一次,开辟一次内存String str2="123";存放在字符串常量池中;创建时,先判断内存中是否有字符串,再决定是否开辟内存...原创 2018-11-29 11:51:06 · 134 阅读 · 0 评论 -
java知识点
每次对String类型的值进行改变的时候都会生成一个新的String对象,因此进行字符串拼接操作(+运输符)时,会生成大量的对象,会对性能产生很大的影响。 从速度和性能上来看,如果要进行大量字符串的拼接操作(如SQL文的拼接)时,建议使用StringBuffer类。 StringBuffer类是用一个长度可变的char数组来存放字符串的内容。因此使用StringBuffer处理字符串时,不会生成新...原创 2018-11-29 12:22:28 · 125 阅读 · 0 评论 -
Data类
Date data= new Date();//获取时间 System.out.println(data); System.out.println(data.getDate());//获取日子 System.out.println(data.getDay());//获取星期几 System.out.println(data.getHours());//当前小时 ...原创 2018-11-29 15:13:06 · 130 阅读 · 0 评论 -
DecimalFormat
DecimalFormat对十进制数字进行格式化。规则:0 必须显示对应位的数字,若此位没有数字,则补零# 不用补零, 分隔符. 小数点% 百分数\u00a4 货币形式 DecimalFormat def=new DecimalFormat("000,000.000");//新建一个对象,并写好格式 Sy...原创 2018-11-29 15:49:53 · 163 阅读 · 0 评论 -
DateFormat
DateFormat类用来格式化或解析日期或时间。 DateFormat类提供了很多静态方法,可以将日期或时间格式化成不同的风格。 DateFormat类是一个抽象类,是Format的子类,因此不能使用new的方式创建对象,用该类的getIntance()返回时间或日期。格式化时间:DateFormat.getTimeInstance() 格式化日期:DateFormat.getDateI...原创 2018-11-29 16:49:47 · 248 阅读 · 1 评论 -
SimpleDataFormat
SimpleDateFormat类是DateFormat类的一个具体子类,用于格式化日期或时间。SimpleDateFormat类可以直接使用new关键字创建对象。SimpleDateFormat类可以根据指定的模式对日期或时间进行格式化。常用的模式: yyyy 年 MM 月 必须大写、否则就是分 dd 日 HH 时 如果是小写、为12小时制 m...原创 2018-11-29 17:13:01 · 2441 阅读 · 1 评论 -
Calendar
Calendar类是一个抽象类,因此不能使用new的方式创建对象,在使用时可以直接使用Calendar类中提供的静态方法getInstance()取得Calendar类的一个实例。Calendar类为一组诸如YEAR、MONTH、DAY_OF_MONTH、HOUR等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。它本身就是一个时间,不用再实例化时间...原创 2018-11-29 18:09:41 · 129 阅读 · 1 评论 -
连接数据库查询、添加、删除、修改
数据库操作分为两大部分:连接·、操作。无论是查询、添加、删除还是修改,他们都要进行连接操作,因此可以将连接操作创建一个共有的类,方便直接操作。连接操作1.加载类:此处字符串中是驱动类的路径package com.hisfot.test.utils;import java.sql.Connection;import java.sql.DriverManager;import j...原创 2018-12-10 22:19:59 · 450 阅读 · 0 评论 -
object类
object是所有类的父类(没有继承其他类的类),它~的方法equal:getClass:取得该对象的类型(也可以说是类)getName:取得该类的名字getSuperClass:取得父类的名称~方法的重写:它的方法可以被子类根据需要进行重写。如String类重写的equal方法等...原创 2018-11-22 15:20:24 · 134 阅读 · 0 评论 -
值传递与引用传递
值传递值将内存的单元中的值传给参数,若不接受,内存不发生改变 引用传递 将内存地址传递给参数,若对该地址改变值,不需接受,内存就会发生改变 package demo;public class PassRef { public static void main(String[] args) { Obj obj = new Obj(); ob...原创 2018-11-16 20:24:18 · 140 阅读 · 1 评论 -
构造方法与this
构造方法特点:与类名相同、没有返回值、有一个系统默认生成的无参构造方法,可进行重载public class Test { public Test() {//没有返回值、没有void,名字与类相同 }}构造方法的过程:Test t=new Test();//表示有一个Test类型的变量t,new Test表示创建一个对象,将此对象存入t中。此时,有一个栈内存t被开辟...原创 2018-11-11 21:25:42 · 323 阅读 · 0 评论 -
修饰符的作用与区别
修饰符分为访问修饰符(决定访问权限)与非访问修饰符(修饰属性)两种。它可以修饰类、包的成员(变量和方法),他们的适用范围各不相同。修饰符的种类:访问修饰符:public(同一类、同一包中的类、子类、不同包中的类都可以访问;可修饰所有)、protected(同一类、同一包中的类、子类包含不同包中的子类都可以访问;可修饰变量与方法) 、default(同一类、同一包中的类可以访问;可修饰所有) ...原创 2018-11-11 20:43:14 · 1067 阅读 · 0 评论 -
类的生命周期
类的生命周期:(加载)java 运行.class文件。该文件由javac运行的.java文件运行而来。是一个字节码文件,有java虚拟机运行。 验证。验证格式是否正确,并会否对虚拟机进行损害。 准备。为静态成员变量(即类的静态变量,用static修饰)分配内存,并赋默认值;(当为String时,默认值为null;char~空格)。int a=整形默认值。 解析。将变量名转换为内存地址,类...原创 2018-11-10 19:06:16 · 189 阅读 · 0 评论 -
单例
单例指的是在整个过程中都只创建一个对象。它实现的方法是使构造方法私有化、而提供另一个静态的返回对象的方法。这样,在创建对象时,就可以用类.方法创建。它分为懒汉式与饿汉式两种。懒汉式懒汉式指的是只有调用时才开始创建对象。它依赖一个判断完成。public class Phone { static Phone phone;//初始化时,创建静态变量 private Phone() ...原创 2018-11-11 21:55:17 · 158 阅读 · 0 评论 -
变量
全局变量与局部变量位置不同,作用范围不同。全局变量定义在方法外部,整个程序都可以使用。 静态变量与成员变量 前者初始化赋值,后者实例化赋值。常量与变量前者必须赋值,后者不需要赋值,有默认值。 局部变量权限大于全局变量权限 ...原创 2018-11-13 13:27:05 · 105 阅读 · 0 评论 -
多态
多态就是多种形态,它允许将子类创建的对象赋值给父类。由此,调用父类的非私有化成员和子类重写过非静态方法的方法。因此,多态是建立在继承和重写的基础上的。多态与调用的方法调用没有重写过的子类方法:这种情况下的调用不能够调用,方法列表中没有该种方法调用没有重写过的父类方法:能够正常调用,利用对象.方法调用即可调用重写过的父类静态方法:即使重写,实际调用的仍然是父类的静态方法调用重写过的父...原创 2018-11-18 17:04:24 · 103 阅读 · 0 评论 -
获取类名
对象开始:对象.getClass().getClassName() 类开始:类.class.getName 返回值为字符串型System.out.println(fa2.getClass().getName());System.out.println(Son.class.getName());输出结果:demo.Daudemo.Son...原创 2018-11-18 17:10:45 · 120 阅读 · 0 评论 -
抽象类
抽象类是一种模糊的概念, 用来描述一些代表通用概念的类。可以通过子类来重写抽象类的方法。抽象类:抽象类的修饰符:类i的四种修饰符a中,finaln由于不能被继承,所以很明显不能修饰抽象类 抽象类本身是不能进行实例化的,但是可以有匿名内部类,但它是有构造方法的 抽象类可以没有抽象方法,也可以有抽象方法抽象方法抽象方法一旦存在,那么它所属的类必须是抽象类 抽象方法的修饰符:抽象的、...原创 2018-11-18 17:46:33 · 93 阅读 · 0 评论 -
接口
接口是一种特殊形式的抽象类,可以理解为一个“纯”抽象类。接口中所有的方法全部都是“抽象”的,这些方法只定义了方法名、参数、返回类型,但没有方法体。但在jdk1.8后接口中可以有静态方法接口是没有构造方法的,因此不能够实例化 接口的修饰符可以有:public、 abstract 接口的默认修饰符是public,因此,抽象方法的默认修饰符为public abstract,定义抽象方法时可以不写...原创 2018-11-18 20:11:45 · 105 阅读 · 0 评论 -
接口与抽象类
区别:前者多实现,后者单继承 接口可以继承多个接口,类只能继承一个类 前者没有构造方法,后者有 前者只有常量,后者可以有变量,方法 前者默认修饰符public,后者default default功能不同。前者意为默认的,修饰方法时实现类默认拥有此方法可直接调用;后者为权限修饰符 后者可以有其它方法,也就是有了其他的能力相同点:都能够继承 都不能实例化,有匿名类 都有抽象方...原创 2018-11-18 20:24:29 · 96 阅读 · 0 评论 -
继承
继承: 通过继承可以直接使用父类的非私有化属性与方法 关键字:extends 在子类中,子类可以定义自己的类与方法,它们可能会与父类中的类与方法重名,也可能不会。 public class Animal { int id; private int age;//私有化父类属性,子类无法继承 public void eat() { System.out....原创 2018-11-16 19:11:35 · 90 阅读 · 0 评论 -
重写与重载
重写:在具有继承关系的子类中,子类通过相同的参数列表、相同的方法名、修饰符类别比父类修饰符类别高或相同、返回值类型相同或是父类方法返回值的子类,形成的方法称为子类的重写。可以用注解@override来验证class Test{ public Test inta1() { Test a=new Test(); return a; }}class Test1 extends Tes...原创 2018-11-16 19:45:14 · 89 阅读 · 0 评论 -
特殊的变化
字符串与整数的加减运算不再可以 基本数据类型发生变化 变量作用范围整个运行过程(没有删除情况下~~del) 解释器将空字符串解释为假,非空为真...原创 2019-01-25 17:33:08 · 133 阅读 · 0 评论