`
jiagyao
  • 浏览: 96430 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Java开发中该注意的一些东西

阅读更多
java的类型自动提升规则 http://www.mscto.com

1、所有byte,short,char型的值将被提升到int型;

2、如果一个操作数为long型,计算结果就是long型;

3、如果一个操作数是float型,计算结果就是float型;

4、如果一个操作数是double型,计算结果就是double型。

http://www.mscto.com


我们不能把任何方法体内的变量声明为静态,例如下面这样是不行的 http://www.mscto.com

 


fun{
static int i = 0;
} http://www.mscto.com 



1、在静态的方法里只能直接调用同类中其他静态成员(包括变量和方法),而不能直接访问类中的非静态成员,这是因为,对于非静态成员,先要创建类的实例对象后才可使用,而静态成员在使用前是不需要实例化的;


2、静态方法不能以任何形式引用this或super关键字;

3、main()方法是静态的,因此jvm在执行main方法时,不创建main方法所在的类的实例对象,因此在main方法中,不能直接访问该类中的非静态成员。

 

软件开发网


1.final标记的类不能被继承;



2.其标记的方法不能被子类重写;



3.其标记的变量即变成常量,只能赋值一次,但这个常量也只能在这个类内部使用,不能在类的外部使用,且赋值只能在声明的时候显式赋值或在构造方法中赋值,构造方法里不含返回值的概念是不同于“void”的,对于"public void example()"这样的写法就不再是构造方法了,而变成了普通方法,很多人都会犯这种错,在定义构造方法时加了void,结果这个方法就不再自动调用了。

1.java只支持单继承,不允许单继承,但一个类可以被多个类继承;


2.可以有多重继承,即一个类可以继承某个类的的子类,如B继承了A,C又可以继承B,那么C也间接继承了A;

3.子类继承父类所有的成员变量和成员方法,但不继承父类的的构造方法,在子类的构造方法中,可以使用语句super调用父类的构造方法;

http://www.mscto.com


4.如果子类的构造方法中没有显式地调用父类构造方法,也没有使用this关键字调用重 载的其他构造方法,则在产生子类的实例对象时,系统默认调用父类无参数的构造方法,如果父类没有无参数的构造方法,则编译出错。 http://www.mscto.com

在子类中可以根据需要对从父类中继承来的方法进行改造——方法的覆盖(也叫重写)。覆盖方法必须和被覆盖方法具有相同的方法名称、参数列表和返回值类型 子类想调用父类的被覆盖的方法,可以用super.方法()的格式。



注意:


覆盖方法时,不能使用比父类中被覆盖的方法更严格的访问权限,如:父类中的方法是public的,子类的方法就不能是private的,如果子类转换成父类,那么子类中新定义的方法不可用(编译不通过)。如果子类重写了父类的方法,那么子类方法可用。如果父类方法没有被重 写,则可用 。

Object类



Java中有一个比较特殊的类,就是Object类,它是所有类的父类,如果一个类没有使用Extends关键字明确标识继承另外一个类,那么这个类就 默认继承Object类。所以、Object类是所有类的父类, Object类的方法适用于所有类。 软件开发网

两种多态方式一般来说,多态主要是存在两种类型:编译时的多态和运行时的多态。



1、编译时的多态主要是通过函数重载来实现的。所谓函数重载是指保持函数名不变,主要通过更改函数形参的个数以及形参的类型来定义出多个同名函数来实现对多种类型数据的逻辑处理。这种类型的多态关系是编译器在编译阶段就已经在函数调用的地方确定的,因而运行过程中速度较快,但功能比较局限。

2、运行时的多态在不同的语言中拥有不同的实现方案。C++通过虚函数的晚捆绑来实现,而Java通过面向接口编程和面向抽象编程来实现动态调用相应的函数实现。但归根结点,这些语言都是通过将多种特殊实现的类抽象为一个泛化类来实现运行多态。



例如:


A是B的父类 A S=NEW B(); 如果父类有个方法叫Amethod(),子类也有一个,那么如果S.amethod的话,就会调用子 类的Amethod(),而不是父类的,父类有若干个子类的,而A S=NEW B(); A S=NEW C(); A


S=NEW D(); 等等就实现了多态!



抽象方法必须用abstract关键字修饰,任何带有抽象方法的类都必须声明为抽象类。

抽象类的定义规则:


1.抽象类必须用abstract关键字来定义,抽象方法也必须用abstract关键字来定义

http://www.mscto.com

2.抽象类不能被实例化,也就是说不能用关键字new去产生对象



3.抽象方法只需声明无需实现



4.含有抽象方法的类必须被声明为抽象类,抽象类的子类必须覆盖所有的抽象方法后才能被实例化,否则,这个子类还是抽象类。



注意:含有抽象方法的类一定是抽象类,抽象类中的某个方法不一定是抽象方法。


1、在接口中,成员只能是public类型。当没有public修饰时,依然是public访问范围 软件开发网

2、接口中的变量默认是用public static final 标识的,所以,接口中定义的变量都是全局静态变量 http://www.mscto.com

3、我们可以定义一个新的接口,用extends关键字去继承一个已有的接口;也可以定义一个类,用implements去实现一个接口中的所有方法;还可以去定义一个抽象类用implements关键字去实现接口中的部分方法。

接口的定义特点:

1. 实现一个接口就是要实现接口的所有方法(抽象类除外)


2. 接口中的方法都是抽象的

3. 多个无关的类可以实现同一个接口,一个类可以实现多个无关的接口

注意:

软件开发网

import语句必须先于所有类声明。在调用类时,使用类的全名,即包+类的形式,可以不用import引入。在同一包中的类可以互相引用,无需import语句。java.lang包是自动导入的。父包与子包之间,能从语意上表示某种血缘关系,如p1.p2.*和p1.p2.p3.*,但在使用上,即使父包调用子包中的类,也得使用子包的全名,也就是说我们import包中的类,却不能把子包的类也引入。

http://www.mscto.com

我们处理异常时,常用的三个方法是:

软件开发网
分享到:
评论

相关推荐

    MyEclipse 6 Java 开发中文教程2011

    亲爱的读者, 当您掌握了本书的内容后, 应立即掌握以Google来阅读文章提高自己能力的自学之路, 并加入到企业投入到真正企业项目的锻炼中去, 切勿再浪费万元学费去重复学习低端Java培训机构的雷同课程. 请记住, 只有您...

    SpringBoot开发非常美观的java博客系统(包含后台管理功能)

    三、idea以maven项目导入该项目后,发现没有maven的依赖包时,需要对每个maven module进行clear和install,并且注意maven的依赖顺序 SpringBoot开发非常美观的java博客系统(包含后台管理功能) SpringBoot开发非常...

    Java Web整合开发王者归来gh786395613.part6.rar

    经典的书籍,文档有目录结构,可以当字典查询,方便学习。...《Java Web整合开发王者归来gh786395613.part1.rar》 ~《Java Web整合开发王者归来gh786395613.part8.rar 》, 前7个都是50M,最后一个文件24.1M。

    Java Web整合开发王者归来gh786395613.part5.rar

    经典的书籍,文档有目录结构,可以当字典查询,方便学习。...《Java Web整合开发王者归来gh786395613.part1.rar》 ~《Java Web整合开发王者归来gh786395613.part8.rar 》, 前7个都是50M,最后一个文件24.1M。

    java使用jna连接华视CVR-100UC读卡器

    由于java提供jni有诸多不便,再加上我很菜,c这些东西全还给了老师了,所以还是选用jna调用,代码什么的都放在附件中了,jna的使用其实还是挺简单的,网上有很多相关的示例,但是就是需要注意一些dll文件路径,参数...

    张孝祥Java就业培训教程.pdf

    在刚开始的第一章就详细地讲解了Java开发环境的搭建、反编译工具的使用、JDK文档资料的查阅,Java程序的编译、运行过程。在第二章中,全面地讲解Java的基本语法知识,对基本语法的讲解也不是泛泛而谈,而是在其中...

    Java Web整合开发王者归来gh786395613.part7.rar

    经典的书籍,文档有目录结构,可以当字典查询,方便学习。...《Java Web整合开发王者归来gh786395613.part1.rar》 ~《Java Web整合开发王者归来gh786395613.part8.rar 》, 前7个都是50M,最后一个文件24.1M。

    Java Web整合开发王者归来gh786395613.part4.rar

    经典的书籍,文档有目录结构,可以当字典查询,方便学习。...《Java Web整合开发王者归来gh786395613.part1.rar》 ~《Java Web整合开发王者归来gh786395613.part8.rar 》, 前7个都是50M,最后一个文件24.1M。

    Java Web整合开发王者归来gh786395613.part3.rar

    经典的书籍,文档有目录结构,可以当字典查询,方便学习。...《Java Web整合开发王者归来gh786395613.part1.rar》 ~《Java Web整合开发王者归来gh786395613.part8.rar 》, 前7个都是50M,最后一个文件24.1M。

    Java Web整合开发王者归来gh786395613.part8.rar

    经典的书籍,文档有目录结构,可以当字典查询,方便学习。...《Java Web整合开发王者归来gh786395613.part1.rar》 ~《Java Web整合开发王者归来gh786395613.part8.rar 》, 前7个都是50M,最后一个文件24.1M。

    张孝祥java就业培训教程(完整版电子书)-书内源码及PPT文档

    在刚开始的第一章就详细地讲解了Java开发环境的搭建、反编译工具的使用、JDK文档资料的查阅,Java程序的编译、运行过程。在第二章中,全面地讲解Java的基本语法知识,对基本语法的讲解也不是泛泛而谈,而是在其中...

    java C/S结构网吧管理系统<内附java源代码>

    java C/S结构网吧管理系统 开发环境SQL Server 2000,JBuilder 2006 开发语言JAVA 界面美工Photoshop 7.0 运行环境Windows 毕业设计第一名,老师评价此作品稍作修改可在现实中使用;包括服务端,客服...

    java面试宝典2017版本

    这套面试题主要目的是帮助那些还没有java软件开发实际工作经验,而正在努力寻找java软件开发工作的朋友在笔试时更好地赢得笔试和面试。由于这套面试题涉及的范围很泛,很广,很杂,大家不可能一天两天就看完和学完这...

    JAVA初中级面试题文档

    这套面试题主要目的是帮助那些还没有java软件开发实际工作经验,而正在努力寻找java软件开发工作的朋友在笔试时更好地赢得笔试和面试。由于这套面试题涉及的范围很泛,很广,很杂,大家不可能一天两天就看完和学完这...

    Android应用开发报告.docx

    JDK(Java Development Kit)是整个Java的核心,包括一系列Java开发的东西,安装完毕后需要配置环境变量。 Java环境变量配置 JAVA环境变量的配置主要包括三个部分:JAVA_HOME、PATH、CLASSPATH JAVA_HOME JDK的安装...

    Java 泛型(Generics)使用说明

    在实际应用中,如果能够灵活应用范型和反射,那么该Java程序员可以设计出非常好的东西来,从而解决实际开发简化开发过程的目的。比如,在EJB 2.0开发客户端应用时,如果使用范型和反射,可以把EJB 2.0的标准使用...

    编程注意的点

    这是Java的开发学习的一些应该注意的东西

    android开发入门教程

    2.3.1 Java、Eclipse和ADT插件安装 2.3.2 设定AndroidSDKHome 2.4 MacOS一族——苹果开发环境搭建 2.5 本章小结 第3章 清点可用资本——AndroidSDK介绍 3.1 AndroidSDK基础 3.2 深入探寻AndroidSDK的密码 3.2.1 ...

    Java面试宝典。北大青鸟

    这套面试题主要目的是帮助那些还没有java软件开发实际工作经验,而正在努力寻找java软件开发工作的朋友在笔试时更好地赢得笔试和面试。由于这套面试题涉及的范围很泛,很广,很杂,大家不可能一天两天就看完和学完这...

Global site tag (gtag.js) - Google Analytics