学Java到底学什么

时间:2022-07-28
本文章向大家介绍学Java到底学什么,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

变量与数据类型

String userName;
int telephoneNo;
float salary;
boolean isRegular;

Java的最佳实践之一是遵循正确的命名约定。像上面的变量(姓名,电话等)和方法应以小写字母开头,随后的单词以大写字母开头-userName。同样,由于布尔数据类型返回true或false,因此最好以is,are,has等开头的变量命名。

数据类型char,int,float,boolean和double称为原始类型,而Java对于这些类型都有相应的对象。例如,int具有Integer;布尔值具有布尔值,依此类推。字符串是一个对象。

那么,我们如何处理数据?我们对其执行一些操作!

操作

/+ - * / %

条件内部的表达式结果只能是布尔值。如果我们比较两个字符串,例如if(driverName ==“ Chand”),我们将使用比较运算符'==',该赋值运算符与赋值运算符'='不同。同样,还有<,<=,>,> =等。

条件

就像我们在上面看到的那样,“ if”是一种条件,可以测试某些东西是否准确并相应地返回结果。它通常与else if和else语句结合使用,可以处理多种情况。

if(marks < 23)
grade = ‘F’;
else if(marks > 23 && marks < 60)
grade = ‘D’;
else 
grade = ‘B’;

请注意,&&表示两个表达式都必须为true才能使if成功。

函数

我们编写的许多代码都可以分成代码块,以便应用程序的许多部分可以重用它。系统的此类模块称为功能。例如,应用等级可以是基于标记的功能。该系统分为较小的功能时,看起来很整洁,易于理解。它是模块化且可重复使用的。

Java中的函数名称以小写字母开头,其后的单词的首字母大写。例如,获取返回一个char的成绩(浮点数),返回一个布尔值的isRegular(String driverName)等等。

好的,现在开始Java真正的强大部分。

面向对象

在OOPS中,所有内容都被视为对象。铅笔是物体,汽车,植物,动物,甚至驾驶员(司机)也是物体。

继续我们的驱动程序示例,让我们说一下,以下属性标识了一名驾驶员– driverName,joiningDate,isRegular,dateOfBirth和avgCustomerRating。

可以说,像Uber这样的服务提供商将拥有许多这样的司机。每个司机都具有所有这些属性,这些属性将通过其唯一值来区分。这意味着,我们可以使用这些属性作为类的成员来创建“司机”类。每当我们需要获取或设置特定司机的详细信息时,我们都会使用new运算符创建Driver类的“对象”。

Driver driver = new Driver();

创建类时,我们还为成员创建了“ getter and setter”方法,通过该方法我们可以获取成员的各个值。如果必须设置整个对象,则可以使用应该在类中定义的构造函数。

public Driver(String driverName, String joiningDate, boolean isRegular, String dateOfBirth, float avgCustomerRating){
    this.driverName = driverName;
    this.joiningDate = joiningDate;
    this.isRegular = isRegular;
    this.dateOfBirth = dateOfBirth;
    this.avgCustomerRating = avgCustomerRating;
}

现在,当我们要创建一个对象时,只需将new运算符和该构造函数调用为–

Driver driver1 = new Driver(“John”, “21/12/2018”, true, “12-01-1983”, 4.5);

如果您正在同时练习代码,请在修复编译错误(如有)之后,构建并运行该程序并扩展您的项目。您将看到与每个.java文件相对应的.class文件。

数据结构与循环

Java中有许多数据结构,比如:数组(array),列表(lists),maps,(树)Tree等。所有这些都在Collection框架下,但Array除外,它是java.util包的一部分。了解Collection将使您对存储和检索数据有极大的满足感-这意味着您将赢得一半的胜利。让我们用数组做一个简单的例子。

Driver[] drivers = new Driver[5];

假设有五个司机,并且我们想根据某些条件为每个司机设置薪水。为此,我们使用“ for”循环:

for(int i=0l i<5;i++) {
  if(driver[i].isRegular && driver[i].salary < 400)
    driver[i].salary += 200;
}

请注意,我们获取了每个司机的详细信息,然后对每个司机进行了一些检查。之后,我们设置一个值。在这里,我们已将Driver的个数硬编码为5,但在实际应用中,我们将从数据库或控制台中获取该数目。

怎么做呢?

用户输入

要获得用户的输入,最好的方法是使用“Scanner”方法。

Scanner scanInput = new Scanner(System.in);

之后,我们可以使用Scanner的next()方法一个接一个地获取输入。

我们得到的第一件事是需要为其存储信息的司机的数量。然后,我们创建一个相同长度的数组,循环遍历,实例化循环中的每个对象,并使用构造函数或setter方法设置值。

连接数据库

为了使我们的Java代码连接到数据库,我们需要一个JDBC驱动程序(与我们的car Driver不同)。不同的数据库具有不同的驱动程序。例如,对于MySQL,驱动程序将为com.mysql.jdbc.Driver。接下来,我们需要连接到数据库所在的URL(位置)。要访问数据库,我们也需要用户名和密码。建立连接后,我们可以通过代码执行查询以获取或设置必要的详细信息。

对于任何简单或复杂的Web应用程序,您都必须了解JDBC(Java数据库连接)。学习这个很好的教程,解释有关JDBC连接的知识。您将享受自己独自学习的一切。

文件处理

Java中的文件处理使用两个类FileWriter和FileReader完成。Java文档描述了这些类提供的所有方法和构造函数,它们非常简单。之前使用了FileInputStream和FileOutputStream,但是前两个是首选,因为它们写入字符流,而后两个是字节流类。请记住,通过文件处理,捕获FileNotFoundException之类的异常至关重要。

异常处理

Java允许很大的灵活性。但是作为开发人员,我们需要知道在什么情况下我们的代码可能会给出错误的结果。一种这样的情况是用户未输入正确的值。例如,如果您将driverName设置为String,并且用户引入了一些数字或随机字符,则我们应该能够处理此类情况并通知用户。这些通常是使用JavaScript在客户端完成的,但可以禁用JavaScript。作为开发人员,我们也需要在我们这边进行验证。一些标准的例外是-:

  • NullPointerException:当我们尝试对null对象进行某些操作时。
  • NumberFormatException:当我们尝试将字符串转换为数字时,它是无效的。
  • ArrayIndexOutOfBoundsException:当我们尝试访问超出列表大小的元素时

Java中有许多此类经过检查和未经检查的异常,对于健壮的代码,您需要了解这些异常。

垃圾回收

尽管我们总是讨厌垃圾,但Java GC是您很乐意了解的东西。作为程序员,您不必担心垃圾收集器线程如何工作。它只是安静地工作。但是,如果您有兴趣,可以阅读一本好书,也可以在一些Java核心访谈中询问有关内容。

多线程

为了处理并发,Java支持多线程并具有有效的内置方法。尽管许多人认为线程是一个可怕的话题,但对于Java却不是这样。线程的行为有时会有所不同,但是在某个时候我们都有情绪波动,不是吗?如果处理得当,线程就像我们一样总是处于最佳状态。

例如,您正在尝试预订出租车。当您签出多个选项时,许多其他用户尝试从同一起点搜索同一出租车。

第一个确认并获得处理的人!如果您快速进行预订,则该骑行将为您锁定-其他骑手则看不到此特定的出租车。但是,如果由于某种原因取消了驾驶室,则会解除锁定,其他人也可以使用驾驶室。

线程具有相同的概念。如果一个线程正在更改其他用户想要访问的部分代码,则其他线程必须等待轮换,以使所有线程无法同时处理同一数据并破坏该数据。

多线程使我们的生活变得轻松—想想在线票务,银行交易和所有安全交易—如果每个人都可以同时访问相同的数据,那么世界将一片混乱!

创建Web应用程序

好吧,现在我们来谈谈真实的事物!学习Java的全部目的是创建交互式,快速的健壮的Web应用程序。如果您已经具有IDE设置,则只需将J2EE组件安装到IDE中即可。

阅读此博客以了解J2EE如何帮助构建可扩展且健壮的Web应用程序。

创建Web服务

Java Web服务用于与MVC体系结构的不同层进行交互。Java Web Service(JWS)应用程序有两种通信方式:SOAP和RESTful服务。通过WSDL(Web服务描述语言)完成通信。阅读这份涵盖所有有关SOAP和REST的广泛教程,以开始使用Java Web服务。

结论

在此博客中,我为您提供了许多资源以及指向精通Java所需了解的各种子主题的链接。

Java还有很多其他的OOPS概念,例如装箱,拆箱,设计模式,泛型等,它们可以帮助您更好地进行编码,但是这些概念将帮助您构建功能性应用程序。