Java现在是一个前景很好的语言,开始学习它的同时,我还是学习C++,他们存在很大的相同点,都是面向对象的思想。而Java完全是面向对象的一种思想,而Java利用Java虚拟机(JVM),使它可以跨平台使用,还有一个更重要的特性就是在语言级支持多线程的程序设计,使得一个程序能够同时执行多个任务。
现在Java应用领域主要分为3个部分:
1.J2SE,主要用来开发桌面应用软件用;
2.J2ME嵌入式开发,向手机里的软件、掌上电脑等
3.J2EE属于网络编程,JSP等等,就是做网站用到的编程
写一个简单的类Triangle
class Triangle
{
int a;
int b;
int c;
int zhouchang( )
{
return a + b + c;
}
double area( )
{
double p = 1.0 * (a+b+c) / 2;
return Math.sqrt(p * (p-a) * (p-b)*(p-c));
}
};
class M
{
public static void main(String[] args)
{
Triangle s = new Triangle( );
s.a = 3;
s.b = 4;
s.c = 5;
system.out.printf("%d %f\n", s.zhouchang( ), s.area( ));
}
}
注意:
1.在Java中double float用%f输出,在C语言中double用%lf, float用%f;
2.Java中字符和字符串都用Unicode编码表示
3.在Unicode编码中一个字符占两个字节
这里重点分析 Triangle s = new Triangle( );,这句相当于C语言中的Triangle * s = (Triangle *)malloc(sizeof(Triangle));,
a: new Triangle( );是在堆中分配一段内存空间,被当做了Triangle对象来使用
b: s本身的内存是在栈中分配的;
c: 堆中内存的地址赋给了s
面向对象的设计思想
1.确定该问题有哪些事物组成,先用类模拟出该事物
2.通过类间接的解决问题
3.自下而上设计,从问题的一部分着手,一点一点的构建出整个程序
4.表现形式:用类来作为划分程序的基本单位
5.对于需求不明确、变动较大、规模很大的问题非常适合
6.对于“需求明确、规模不大、变动较小的问题”则显得十分累赘
类:把一个事物的静态属性和动态可以执行的操作(方法)组合在一起所得的这个概念就是类
一旦被定义,类的概念就永远存在了
对象:类的一个个体,具体的,实实在在的事物,生命周期是短暂的,会生成和消亡
访问控制符:private default protected public
在一个类的内部,所有的成员可以相互访问,访问控制符是透明的;访问控制符是针对外部而言。
外部访问包括两种方式
通过类名访问类内部的成员
通过类对象名访问类内部成员
函数重载要求:
1.函数的形参个数
2.函数的形参顺序
3.函数的形参数据类型
这三个至少有一个不一样的