`
jayxigua
  • 浏览: 21279 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类

java代码笔记2010-05-31:继承this()的使用多态;单态;静态初始化;==比较的是地址;参数传递的是个值的拷贝还是引用的传递;循环菱形

阅读更多
继承,this()的使用 多态:
class Animal {//其他的不能以public声明
// private String name;
String name;
private int age;
private String gender;

public Animal() {
}

public Animal(String name, int age, String gender) {
this.name = name;
this.age = age;
this.gender = gender;
}

public Animal(String name, int age) {
this(name, age, "male");
}
void methodA(){
System.out.print("我是动物");
}
}

class Monkey extends Animal {
public Monkey() {
}

public Monkey(String name, int age, String gender) {
super(name, age, gender);
}
void methodA(){
System.out.print("我是动物:猴子");
}
void methodM(){
System.out.print("我是 猴子");
}
}

public class test_Inheritance {

public static void main(String[] args) {
// Animal a=new Animal();
Animal[] array_A = { new Monkey(), new Monkey(), new Monkey() };
Animal a=new Animal();
a.methodA();
Animal A_M=new Monkey();
A_M.methodA();//只能够调用Animal和Monkey共有的函数体。
Monkey m=new Monkey();
m.methodA();
}
}
——————————————————————————————————
测试 静态初始化
public class jay_z_singer {
static int i = 5;
static {
System.out.print("静态初始化");
System.out.println("static:" + i++);
}

public static void main(String[] args) {
jay_z_singer a = new jay_z_singer();
jay_z_singer a2 = new jay_z_singer();
jay_z_singer a3 = new jay_z_singer();
// System.out.print("main:"+jay_z_singer.i);
// System.out.print("main:"+jay_z_singer.i);
// System.out.print("main:"+jay_z_singer.i);
}
}

单态————————————————————————
//静态变量和静态函数
public class jay_z_static {
private static jay_z_static instance = new jay_z_static();

private jay_z_static() {
}

public static jay_z_static getInstance() {
return instance;
}

public static void main(String[] args) {
jay_z_static m1 = jay_z_static.getInstance();
jay_z_static m2 = jay_z_static.getInstance();
System.out.print(m1 == m2);// 相同!
}

}

==比较的是地址;参数传递的是个值的拷贝还是引用的传递————————————
public class test_parameter_sort {
String str = "97531";
char[] str_array = str.toCharArray();

void sort1() {
for (int i = str_array.length - 1; i > 0; i--) {
for (int j = 0; j <= i - 1; j++) {
if (str_array[j] > str_array[j + 1]) {
swap1(str_array[j], str_array[j + 1]);
}
}
}
}

void display() {
for (int i = 0; i < str_array.length; i++) {
System.out.print(str_array[i]);
}
}

void swap1(int a, int b) {
int temp;
temp = a;
a = b;
b = temp;
}

void sort2() {
for (int i = str_array.length - 1; i > 0; i--) {
for (int j = 0; j <= i - 1; j++) {
if (str_array[j] > str_array[j + 1]) {
swap2(str_array, j);
}
}
}
}

void swap2(char[] arrayC, int j) {
char temp;
temp = arrayC[j];
arrayC[j] = arrayC[j + 1];
arrayC[j + 1] = temp;
}

public static void main(String args[]) {
test_parameter_sort t = new test_parameter_sort();
// 测试:System.out.print(t.str_array.length+""+t.str_array[1]);
// length指的是他的长度。不考虑/0;这个数组是从0开始的,
System.out.print("原先数组:");
t.display();
System.out.print("第一次参数传递:");
t.sort1();
t.display();
System.out.print("第二次参数传递:");
t.sort2();
t.display();
System.out.print("测试:");
t= new test_parameter_sort();
t.display();
//此时的t已经改变了。原先的那个t已经变成了垃圾,Java 自动处理。

int i = 0;
String s = null;
System.out.print(i+""+s);


}
}
对称 循环 写一个菱形————————————————————

public class test1 {

public static void main(String[] args) {
int n = 15;
int an = 8;
for (int i = 0; i <= n; i++) {
if (i <= an) {
for (int a = an - i; a >= 1; a--) {
System.out.print(" ");
}
for (int j = i * 2 + 1; j >= 1; j--) {
System.out.print("*");
}
System.out.println("");
}else{
int m=n-i;
for (int a = an - m; a >= 1; a--) {
System.out.print(" ");
}
for (int j = m * 2 + 1; j >= 1; j--) {
System.out.print("*");
}
System.out.println("");
}
}
}
}

以上是我最近学习Java记录的笔记和自己参照书本和老师所讲编写的代码和注释。
1422942883这是我的QQ,欢迎各位学习编程的同学加我好友,或者给我的个人主页留言(http://jayxigua.iteye.com/),一起讨论,学习。呵呵。

0
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics