以前Java笔记

2013年9月28日 19:37

面向对象思维
1.一个问题包含哪些类,哪些对象
2.这些类和对象有哪些静态属性和动态方法
3.类和类之间的关系及对应的方法
4.适合方法放在适合的类里

Reusable 可重用的
Extensibility 可扩展性
面向组件

堆---动态分配内存的地方
故将对象和变量放在堆里
方法调用完后,(执行完后)内存就没了

构造函数和THIS类的名字同,
且前没有任何关键字
包括void
为了避免错误,加一个无参数的构造方法

没有任何一个对象引用它,
它就在堆中被垃圾处理识别并清理

方法重载:多个方法的名字相同,但其参数个数或参数类型不同
方法前的类型要相同
构造方法也可以方法重载

对那个对象调用这个方法,this指的就是谁
this是一个引用
Java中的引用只能指向类,不能使基本数据类型

静态方法不是针对某个对象的调用
不能访问非静态成员
其静态成员放在data segment里

public static void main(String args[]) throws IOException{
BufferedReader rd = new BufferedReader(new
InputStreamReader(System.in));
}
多维的意思并不只是指空间,还有形似树状的关系结构。
如in[学校][班级][学生]


构造方法
public class Car{
char name;
char color;
public Car(){
this("color", "name");
}
}
正确的语法。必须写在第一行。
java会自动找到符合的变量来初始化。

字体Segoe UI Symbol 四号 西欧语言
package要放在有效代码的第一行
int a[] = new int[10];
int b[] = a.clone();
clone()用来复制数组全部成员
private static final double PI = 3.1415926

只有在new的时候才会在heap堆里分配内存
int
继承就是共享
在父类的属性不一定要写在子类中
可以在main中再调用
局部变量不能使用访问控制符


mport java.util.Scanner;
class A{
public static void main(String[] args){
String s=new String();
Scanner c=new Scanner(System.in);
s=c.next();
System.out.print(s);
}
}

一个数是完全平方数


bool isSqr(int n)
{
int a = (int)(sqrt(n) + 0.5); //四舍五入求整,又学到一招
return a * a == n;
}

bool isSqr(int n)
{
int a = (int)(sqrt(n) + 0.0001);
return a * a == n;
}

//数组的长度
int num=0;
for(int i=0;i<average.length;i++)
{
if(average[i]!=null)
num++;
}
num的结果是数组中不为空的个数,也就是你存入的个数。
average.length是在你new一个数组时就定义的数组长度,初始值为null

posted on 2018-01-25 13:42  hujun1992  阅读(148)  评论(0编辑  收藏  举报

导航