java语言学习要点_菜鸟入门:Java语言学习六大要点

news/2025/2/26 7:33:50

原标题:菜鸟入门:Java语言学习六大要点

Java的学习是比较复杂的,主要表现在相关的一系列平台、规范和协议上。有经验的Java程序员都知道,只掌握了Java语言本身很难开发应用程序。不讨论这些复杂的概念,而是我是参加的培训,现在从初学者的角度,对于Java语言本身的学习提出自己的见解和建议。本文的讨论基于以下假设:

1. 学习的目的是为了将来进行应用程序的开发,而不是进行语言理论研究

2. 将来的应用开发是在成熟的平台上展开,而不是自己从底层开发平台

646cb2a1a057128d76164d03b05a57fa.png

一、掌握静态方法和属性

静态方法和属性用于描述某一类对象群体的特征,而不是单个对象的特征。Java中大量应用了静态方法和属性,这是一个通常的技巧。但是这种技巧在很多语言中不被频繁地使用。理解静态方法和属性对于理解类与对象的关系是十分有帮助的,在大量的Java规范中,静态方法和属性被频繁使用。因此学习者应该理解静态方法和属性。Java在方法和属性的调用上是一致的,区别只表现在声明的时候,这和C++是不同的。

二、重视接口

在面向对象早期的应用中大量使用了类继承。随着软件工程理论的不断发展,人们开始意识到了继承的众多缺点,开始努力用聚合代替继承。软件工程解决扩展性的重要原则就是抽象描述,直接使用的工具就是接口。接口近年来逐渐成为Java编程方法的核心。另一方面,就应用而言,大部分开发是建立在规范基础之上的,不需要自己建立复杂的继承关系和庞大的类。因此读懂规范和用好规范已经成为应用程序开发人员的首要任务,Java各项规范的主要描述手段就是接口。

e1a39040497fd7f18987fd27458df657.png

三、学好集合框架

Java描述复杂数据结构的主要方式是集合框架。Java没有指针,而是通过强大的集合框架描述数组、对象数组等复杂的数据结构。学好这些数据结构的描述方法对于应用程序编写,特别是涉及到服务器方、3层结构编程至关重要。程序员在这个时候不能再用诸如数据库结果集之类的结构描述数据了。

由于很多语言没有这么强大的集合框架体系,很多初学者不知所措,更不知道拿来做什么用,因此应该引起足够的重视。

四、例外捕捉

Java对例外捕捉的强调是空前的,它强迫程序员用显著的与逻辑方法完全不同的方式描述例外捕捉,对于程序描述的完整性和严谨性有很大的意义。C++也有类似的机制,但是我们看到很多C++程序员并不习惯使用这些机制。

Java的初学者应该充分学习好这种例外捕捉机制,养成良好的编程习惯。

五、多线程需要理解机理

0ecbd09e9c136b260059f9f0fbc08f56.png

很多Java程序员热衷于多线程程序编写,认为是对逻辑能力的挑战。其实在大量应用中根本就不需要编写多线程程序,或者说大多数编写应用程序的程序员不会去写多线程程序。这是因为多线程机制都内置到基础平台当中了。

程序员应该了解的是多线程原理和多线程安全,这对于今后准确地把握程序是至关重要的。

例如JSP中编写到不同的位置对于多个用户环境的安全影响完全不同,又如著名的Super Servlet是每一个访问作为一个进程,但是每一个页面是一个线程,和Servlet正好相反,对程序的性能和安全的影响有天壤之别。

六、了解网络编程

Java号称是最强的网络编程语言,但是大多数应用程序开发人员是从来不会自己开发什么底层的网络程序的。

需要做只是了解原理就够了。网络机制的实现是靠平台实现的,除非自己开发平台,否则是不需要知道socket怎么实现,怎么监听访问的。因此在这方面花太多的功夫就偏离了“将来的应用开发是在成熟的平台上展开,而不是自己从底层开发平台”这一假设。返回搜狐,查看更多

责任编辑:


http://www.niftyadmin.cn/n/4747370.html

相关文章

java终止正在运行的线程_Java再学习——停止一个正在运行的线程

关于这个问题,先了解一下Thread类方法中被废弃的那些方法。suspend(), resume(),stop()/stop(Throwable obj),destroy()首先,stop(Throwable obj)和destroy()方法在最新的Java中直接就不支持了,没必要去看了。我们只需瞧瞧suspend(), resume(…

mysql 5.7 jdbc 8.0_mysql8.0 jdbc连接注意事项

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼url增加参数useSSL 和时区 : jdbc:mysql://localhost:3306/mydb?useSSLfalse&serverTimezoneUTCdriver变化: com.mysql.jdbc.Driver > com.mysql.cj.jdbc.Driver常见错误提示1:如果driver没有添加cj&#xff0c…

java xml路径_java读取xml路径

*内容如下: java 使用相对路径读取 xml 文件: 一、xml 文件一般的存放位置有三个: 1.放在 WEB-INF 下; 2.xml 文件放在/WEB-INF/classes 目录下或 class......JAVA读取xml文件中节点值_计算机软件及应用_IT/计算机_专业资料。pub...使用Java读写XML文档_计算机软件及应用_IT/计…

java string的实现_java有关String操作,实现中间 * 显示

有时,项目中一些用户名要求显示如:t***t,即用户名只显示第一个和最后一个字符,中间用*表示,可使用方法如下:public static void main(String[] args) {String a "testtest";char[] c a.toCharA…

python格式化输出 xz_python之钉钉审批导出

钉钉审批导出需要管理员协助配合并且需要参考钉钉开发文档。1、获取access_token正常情况下access_token有效期为7200秒钉钉开发指南:https://open-doc.dingtalk.com/microapp/serverapi2/eev437appkeyString是应用的唯一标识keyappsecretString是应用的密钥#!/usr/…

cas client java_CAS java client2.1.1 在Tomcat5.5.16下bug的解决

2006-07-19 10:17 | taole版主我按照你的方法试过 ,但是还是会出到访问应用程序后提示输入验证用户名和密码以后就会出现错误页面,异常如下:*************************************HTTP Status 500 ----------------------------------------…

java base64压缩_Base64和Zip数据压缩与解压

压缩图片数据,解压图片数据public class TestZCompress {public static void main(String[] args) {try {File file new File("D://haha.jpg");if (file.exists()) {InputStream in new FileInputStream("D://haha.jpg");byte[] buf new byt…

ast java override_Java调用groovy及groovy中如何使用springBean

一、概述Groovy is a multi-faceted language for the Java platform.Apache Groovy是一种强大的、可选的类型化和动态语言,具有静态类型和静态编译功能,用于Java平台,目的在于通过简洁、熟悉和易于学习的语法提高开发人员的工作效率。它可以…