Java:网络开发,面向对象;c:系统开发,面向功能;
Java:面向用户,拥抱需求,开源;
并发性越高,安全性越低;
Java虚拟机能不能直接编译:能,可以把字节码文件编译成机器指令,很少用。
Java内存回收:GC的垃圾回收机制,长时间未使用,则认为无效,移出内存,采用后台线程。空间换时间,时间效率降低,降低执行效率;
编写环境变量:找到可执行文件,classpath不配不行,虚拟机用,找到标准类库,并加载到内存中;
结构化设计中数据和方法是分离的,可能造成错误的数据调用正确的方法产生错误的结果,因其无绑定。以功能为核心进行设计。
面向对象:以对象为中心开发程序。对象将属性与方法进行封装。
对象:事物在问题领域的抽象。
类:用来描述一个对象
领域模型:类和类之间的关系
表示:
(1)类图静态建模
(2)动态建模:时序图、状态转换图
对象之间的关系:继承、关联关系
类描述了每个对象应包括的属性名
类描述了每个对象共有的行为特征
创建一个对象调用几个构造方法
New、反射调用至少一个构造方法;克隆、反序列化不调用构造方法
构造方法和类名一致、构造方法无返回值。
一个类可有多个构造方法(又叫构造方法的重载)。
代码:
/*学生类*/
public class Student
{
//定义属性
private String name;
private String sex;
private int grade;
private int age;
//构造方法
public Student(){
}
//定义属性“name”的设置方法
public void setName(String _name)
{
name = _name;
}
//定义属性“name”的获取方法
public String getName()
{
return name;
}
//定义属性“Sex”的设置方法
public void setSex(String _sex)
{
sex = _sex;
}
//定义属性“Sex”的获取方法
public String getSex()
{
return sex;
}
//定义属性“grade”的设置方法
public void setGrade(int _grade)
{
grade = _grade;
}
//定义属性“grade”的获取方法
public int getGrade()
{
return grade;
}
//定义属性“age”的设置方法
public void setAge(int _age)
{
age = _age;
}
//定义属性“age”的获取方法
public int getAge()
{
return age;
}
}