tonglin0325的个人主页

Java继承

Java是单继承,只能继承一个父类,但是可以实现多个接口

继承的子类不能直接访问父类中的私有属性,只能通过get和set方法来访问

在继承的操作中,子类对象在实例化之前必须首先调用父类中的构造方法后再调用子类自己的构造方法。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
class person{
private String name;
private int age;

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}

class student extends person{
private String school;

public String getSchool() {
return school;
}

public void setSchool(String school) {
this.school = school;
}
}


public class extends_demo {

public static void main(String[] args) {
// TODO 自动生成的方法存根
student person_1 = new student();
person_1.setName("张三");
person_1.setAge(10);
person_1.setSchool("涵三中");
System.out.println("姓名:"+person_1.getName()+"\n"+"年龄:"+person_1.getAge()+"\n"+"学校:"+person_1.getSchool());
}

}

全文 >>

gson学习笔记

  1. 字符串转JsonObject
1
2
JsonObject origJson = new JsonParser().parse(str).getAsJsonObject();

  1. JsonObject转字符串
1
2
String str = outputJson.toString();

  1. List转JsonArray
1
2
JsonArray array = new Gson().toJsonTree(list).getAsJsonArray();

全文 >>

Thrift通信协议

Thrift的通信协议主要有下面几种:

TBinaryProtocol:二进制协议

TCompactProtocol:带压缩的二进制协议

TJSONProtocol:Json协议,序列化结果例如

1
2
{"2":{"i64":1},"3":{"str":"lintong"},"4":{"lst":["i64",3,1,2,3]}}

TSimpleJSONProtocol:simple Json协议,该协议为只写,即不可反序列化,序列化结果例如

1
2
{'name': 'XiaoMing', 'age': '20'}

TMultiplexedProtocol

TTupleProtocol

全文 >>

Java内部类和包装类

在类Outer的内部再定义一个类Inner,此时类inner就称为内部类,而类outer则称为外部类。

内部类的唯一好处就是可以方便的访问外部类中的私有属性

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class outer{
private String info = "Hello World!";
class inner{
public void print(){
System.out.println(info);
}
};

public void fun(){
new inner().print();
}
};

public class inner_test {

public static void main(String[] args) {
// TODO 自动生成的方法存根
new outer().fun();
}

}

全文 >>

Java单例设计模式

单例模式(Singleton Pattern)是Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式

这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。 这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。

1.没有使用单例:重复调用会创建多个对象

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
package java_basic;

class Singleton{
public Singleton(){
}

public void print(){
System.out.println("Hello Word");
}
}

public class singleton {

public static void main(String[] args) {
Singleton s1 = new Singleton();
Singleton s2 = new Singleton();
Singleton s3 = new Singleton();
System.out.println(s1.hashCode());
System.out.println(s2.hashCode());
System.out.println(s3.hashCode());
s1.print();
s2.print();
s3.print();
}

}

全文 >>