Java基础3_面向对象上
来源:互联网 发布:ipad进入淘宝卖家中心 编辑:程序博客网 时间:2024/05/17 07:13
/*面向对象上
函数的参数传递
基本数据类型的参数传递
数组的传递和对象引用变量的情况是一样的.
*/
1.理解面向对象的概念:
面向过程MoveWindow
面向对象Move 类与对象,类是对某一类事物的描述,是抽象的,概念上的定义:对象是实际存在的该事物的每个个体,因而也称实例.
类可以将数据和函数封装在一起.
创建对象要用new关键字.并且对象是具有生命周期的
class PassParam
{
int x;
public static void main(String[] args)
{
System.out.println(args[0]);//Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
System.out.println(args[1]);//aaa bbb 运行时传递的一个参数.运行时参数用空格格开
/*int x=5;
change(x);
System.out.println(x);*/
PassParam obj=new PassParam();
obj.x=5;
change(obj);
System.out.println(obj.x);
int[]x=new int[1];
x[0]=5;
change(x);
System.out.println(x[0]);
}
public static void change(PassParam obj)
{
obj=new PassParam();//新创建的一个对象(参数传递)
obj.x=3;
}
public static void change(int[] x)
{
x[0]=3;
}
}
/*
static静态变量
静态方法里只能直接调用同类中的其它的静态成员,而不能直接访问同类中的非静态成员.这是因为,对于非静态的方法和变量,需要先创建类的实例
对象后才可使用,而静态方法使用前不用创建任何对象
静态方法不能以任何方式引用this和super关键字
main()方法是静态的
static静态变量巧妙应用:
1.单态设计模式(设计模式就是前人成功经验)
静态代码块:
*/
class Chinese
{
static Chinese objRef=new Chinese();//只有一份内存空间,相当于全局变量
private static int count=0;
private static String country="中国";
static //静态代码块
{
count=2;
System.out.println("static code");
}
String name;
int age;
public static Chinese getInstance()
{
return objRef;
}
private Chinese()//Chinese() 可以在 Chinese 中访问 private
{
//count++;
System.out.println(++count);
}
static void sing()
{
System.out.println("啊");
//singOurCountry();无法从静态上下文中引用非静态 方法 singOurCountry()
}
void singOurCountry()
{
System.out.println(country);
//System.gc();
sing();
}
}
class TestChinese
{
public static void main(String[] args)
{
/*System.out.println(Chinese.country);
Chinese ch1=new Chinese();
ch1.singOurCountry();
System.out.println(ch1.country);*/
/*System.out.println("begin");
Chinese.sing();
System.out.println("end");
new Chinese().sing();
new Chinese().singOurCountry();*/
Chinese obj1=Chinese.getInstance();
Chinese obj2=Chinese.getInstance();
System.out.println(obj1==obj2);
}
}
- Java基础3_面向对象上
- Java基础3_面向对象上
- 学习笔记3—Java基础3_面向对象上a
- 学习笔记4—Java基础3_面向对象上b
- Java基础_面向对象_继承
- Java基础_面向对象_多态
- java基础3--面向对象(上)
- _Java基础<四>_面向对象(上)
- 传智播客_张孝祥_Java基础3_面向对象上_学习笔记
- Java基础3_面向对象下1
- Java基础4_面向对象下3
- 黑马程序员—java基础_面向对象3
- Java基础_面向对象思想
- Java基础<五>_面向对象(下)
- Java基础概念_面向对象
- 【黑马程序员】java基础_面向对象
- java基础_面向对象总结
- java基础6_面向对象
- signal 各种操作
- How To Change the Partition Column Of A Partitioned Table Using DBMS_Redefinition [ID 846405.1]
- 网络文件系统nfs的配置(看我写的跟真的似的!)
- signal处理机制
- Thinkphp 2.0 整合fck编辑器
- Java基础3_面向对象上
- java.io.File中的 pathSeparator 与separator 的区别
- Open函数——详解
- 从"头"开始学html
- 提高PHP编程效率的53个要点
- 哎 不容易啊
- 《window》核心编程第五版 小结
- ORA-19809: limit exceeded for recovery files
- backup