- 浏览: 13182 次
- 性别:
- 来自: 南京
-
最新评论
文章列表
String对象是不可变的,每个看起来会修改String对象的方法,实际上都是创建了一个新建的String对象,最初的String对象则丝毫未动。
public class Immutable {
public static String upcase(String s) {
return s.toUpperCase();
}
public static void main(String[] args) {
String q = "howdy";
String qq = upcase(q);
System.out.println( ...
内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类。
内部类可以是静态static的,也可用public,default,protected和private修饰。
内部类是一个编译时的概念,一旦编译成功,就会成为完全不同的两类。对于一个 ...
抽象方法:仅有声明没有方法体
abstract void f();
抽象类:包含抽象方法的类
抽象类可以不含有抽象方法,但是含有抽象方法的类必须声明为抽象类。
一个类如果继承了抽象类,但是并没有实现所有的抽象方法,那么它还是一个 ...
抽象:
抽象就是找出一些事物的相似和共性之处,然后将这些事物归为一个类,这个类只考虑这些事物的相似和共性之处,并且会忽略与当前主题和目标无关的那些方面,将注意力集中在与当前目标有关的方面。例如,看到一只 ...
所谓回调:就是A类中调用B类中的某个方法C,然后B类中反过来调用A类中的方法D,D这个方法就叫回调方法,这样子说你是不是有点晕晕的,其实我刚开始也是这样不理解,来看看人家说的比较经典的回调方式:
Class A实现接口CallBack callback——背景1
class A中包含一个class B的引用b ——背景2
class B有一个参数为callback的方法f(CallBack callback) ——背景3
A的对象a调用B的方法 f(CallBack callback) ——A类调用B类的某个方法 C
然后b就可以在f(CallBack callback)方法中调用A的方法 —— ...
代理模式: 为其他对象提供一种代理,并以控制对这个对象的访问。
代理模式的作用是:为其它对象提供一种代理以控制对这个对象的访问。在某些情况下,一 个客户不想直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介作用。 代理模式一般涉及到三个角色:
抽象角色:声明真实对象和代理对象的共同接口
代理角色:代理对象内部包含有真实角色的引用,从而可以操作真实角色,同时代理对象 与真实对象有相同的接口,能在任何时候代替真实对象,同时代理对象可以在执行真实对 象前后加入特定的逻辑以实现功能的扩展。
真实角色:代理角色所代表的真实对象,是我们最终要引用的对象
代理模式实例:
//抽象角色
p ...
继承
在java中使用extends关键字来表示继承关系。当创建一个类时,总是在继承,如果没有明确指出要继承的类,就总是隐式地从根类Object进行继承。
子类继承父类的域
当子类继承了某个类之后,便可以使用父类中的域,但 ...
final
通常代表“这是无法改变的”。
一般使用到final的有三种情况:数据,方法,类。
final数据
final数据表示一个常量,一旦被初始化,就不能被改变。
若修饰域变量,则必须在域的定义处或者每个构造器中对final进行赋值(java中允许出现“空白final”,即被声明为final但是又没有给定初始值的域)。
对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象,但是对象本身是可以被改变的。
final方法
final修饰方法,可以阻止任何子类修改该方法,并且不能被覆盖。
f ...
Java中数据存储区域包括:
1.寄存器:最快的存储区,由编译器根据需求进行分配,我们在程序中无法控制.
2. 堆栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中。
3. 堆:存放所有new出来的对象。
4. 静态域:存放静态成员(static定义的)
5. 常量池:存放字符串常量和基本类型常量(public static final)。
6. 非RAM存储:硬盘等永久存储空间
7.String特殊区域说明:String,String类型时不可变,因此它需要被存储在常量池中;它的可变版本为StringBuffer;
String有两种建立方法:
(1)Str ...
java虚拟机类加载机制
- 博客分类:
- jvm
类加载过程 类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中 ...
java访问控制权限:private,protected,包访问权限(缺省),public这些访问权限修饰词是置于类中每个成员定义之前的————无论是一个域还是一个方法。如果不提供任何访问权限修饰词,则为包访问权限。 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ ...
基本类型
java确定了每种基本类型的存储空间大小
基本类型 大小 最小值 最大值 包装器类型 默认值
boolean - - - Boolean false
char 16bit Character \
byte 8bit -128 -127 Byte 0
short 16bit -2^15 +2^15-1 Short 0
int 32bit -2^31 +2^31-1 ...
本文参考廖雪峰的git教程编写
Git,据说是世界上最好的分布式版本控制系统
下载安装:
https://git-scm.com/download/
从开始菜单或者任意目录右击打开Git Bash
用户设置:
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
找个合适的目录打开Git Bash,将目录变成Git可以管理的仓库:
git init
这个时候在当前目录下会出现一个.git目录,这个目录就是g ...
sql基础(适用于mysql)
- 博客分类:
- 数据库
创建数据库
CREATE DATABASE 数据库名;
删除数据库
DROP DATABASE 数据库名;
mysql关闭/打开安全模式
SET SQL_SAFE_UPDATES = 0;
SET SQL_SAFE_UPDATES = 1;
创建表
CREATE TABLE T_Person (FName VARCHAR(20),FAge INT,FRemark VARCHAR(20),PRIMARY
KEY (FName));
CREATE TABLE T_Debt (F ...
数据库设计原则(转载)
- 博客分类:
- 数据库
1. 原始单据与实体之间的关系
可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。
在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对 ...