C++与java

本文介绍了Java语言的核心特性,如编写一次,到处运行的平台无关性,JVM的角色,数据类型包括自动类型转换,以及类、构造方法、继承、接口、访问权限和对象实例化的概念。还提到了抽象类和接口在Java中的使用,以及上转型对象的概念。
摘要由CSDN通过智能技术生成

前言,关于java:

      一些浪漫的“废话”:印度尼西亚有一个重要        的盛产咖啡的岛屿叫java,中文译名为爪哇,开发语言为新的语言起名为Java,其寓意是为诗人端上一杯热咖啡。

      java的独特:编写一次,到处运行(write once,run anywhere)java与平台无关,因为java可以在平台之上再提供一个java的运行环境(Java runtime environment),该运行环境由java虚拟机(Java virtual machine),类库和一些核心文件组成。JVM可以直接识别并执行字节码文件,字节码不是机器指令,不和特定的平台相关,不被任何平台直接识别没执行;java对于任何平台提供的字节码都是相同的。

java的一些集成开发环境-IDEA,nebean,myeclipse等,这些IDE都以JDK作为系统的核心。

使用java编译器(javac.exe)编译源文件,得到字节码文件,再使用java解释器(Java.exe)来解释,执行字节码文件。

1.常用数据类型

类型转换:精度排列:byte-short-char-int-long-float-double

自动转换:精度低到精度高,如果表达式中最高精度低于int,则按int计算

引用型数据:

数组:int [ ]a,b==int a[ ],b[ ];

           int [ ]c,d[ ]==int c[ ],d[ ][ ];   //不可在括号中指定个数

           int s1=a.length;  //元素个数

           int s2=d.length;  //一维数组的个数

对象(后详述)

接口(后详述)

2.语句:

一些基本语句和循环不再赘述,和C++基本无异

continue;//本次循环结束,不再执行本次循环体中continue语句中后面的语句

break;//跳出当前的循环

3.类:

 

 

成员变量的默认值:

Boolean-false

char-'\0'

byte,short,int,long-0

float,double-0.0

引用性变量-null

区别成员变量和局部变量:

局部变量什么时候声明,在声明后有效,且范围是声明所在的复合语句内。局部变量无默认值,所以不可以使用未初始化的局部变量。当局部变量与成员变量重名时,局部变量覆盖成员变量

构造方法:

构造方法可以重载;java中没有析构方法

声明对象与实例化对象:

对象调用类中的变量和方法时,只用. 来操作,不用->来操作。java有自动回收内存的机制,当某个实体不再被任何对象所引用时,java自动回收分配的内存,所以java中不存在内存泄漏;而c++中需要手动释放内存,若忘记,则会造成内存泄漏。

引用类型的传值:

传递的是地址,不是对象实体

重载函数:

参数的类型或数量必须发生改变,函数的返回类型和函数名不参与比较

重写函数:

子类对父类继承过来的方法有权利进行重写,重写后运行时就调用该重写的函数。

函数的名字,参数的类型和数量必须全部相同;函数的返回类型可以相同也可以是子类型

注意!!不能降低方法的访问权限,但可以升高

访问权限:

注意!!不用public,private和protected修饰的变量和方法默认为friendly;

但类只有public和友好类(默认),并且不能用private和protected修饰。

继承:java中所有类只有一个父类,即只能被继承一次

子父类在同一个包中的访问权限:继承非private变量和方法,且访问权限保持不变

子父类不在同一个包中的访问权限:只能继承protected和public变量和方法

final关键字:

修饰类-不允许被继承

修饰变量-常量

修饰方法-不允许被修改,即只能继承,不能被子类重写

abstract:

抽象类,用abstract修饰,abstract类里可以有abstract方法,也可以没有。

抽象方法, 只许声明,不许实现,且不许用final修饰。

上转型对象:

A a=new A();   //A是B的父类;

B b=new B();

a=b;

其中对象a可以访问子类对象b重写和继承的方法,以及继承和被隐藏的变量;若子类重写父类的某个方法,a调用子类重写的方法;若子类重写父类的某静态方法,a依旧掉调用父类的静态方法

4.包

通过不同的包名来区分隶属于不同源文件的同名类,位于源文件的第一句,

变量和方法

5.import语句

引入其他类(自定义包和类库中的类)

6.interface

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值