前端进阶全栈计划:Java基础语法

news2025/4/20 8:03:46

请添加图片描述

前言

本教程旨在帮助初学者系统地掌握Java的基础知识。我们将从Java的基本语法开始,逐步深入到面向对象编程、异常处理、多线程编程等核心概念。无论你是编程新手,还是希望夯实基础的开发者,这份指南都将带你走进Java的世界,打下坚实的编程基础。

1. 基本语法

  • 变量与数据类型:理解不同的数据类型(如 int、double、boolean、char 等),以及如何声明和初始化变量。
  int number = 10;
  double price = 29.99;
  boolean isTrue = true;
  char letter = 'A';

2. 操作符

  • 算术操作符:加(+)、减(-)、乘(*)、除(/)和取模(%)。
  int sum = 5 + 3;
  int difference = 5 - 3;
  int product = 5 * 3;
  int quotient = 5 / 3;
  int remainder = 5 % 3;
  • 比较操作符:等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)。
  boolean isEqual = (5 == 3);
  boolean isNotEqual = (5 != 3);
  boolean isGreater = (5 > 3);
  • 逻辑操作符:与(&&)、或(||)、非(!)。
  boolean andResult = (true && false);
  boolean orResult = (true || false);
  boolean notResult = !true;

3. 控制结构

  • 条件语句ifelse ifelseswitch
  if (condition) {
      // code block
  } else if (anotherCondition) {
      // another code block
  } else {
      // another code block
  }

  switch (expression) {
      case value1:
          // code block
          break;
      case value2:
          // code block
          break;
      default:
          // code block
  }
  • 循环结构forwhiledo-while
  for (int i = 0; i < 10; i++) {
      // code block
  }

  int j = 0;
  while (j < 10) {
      // code block
      j++;
  }

  int k = 0;
  do {
      // code block
      k++;
  } while (k < 10);

4. 方法

  • 方法定义与调用:如何定义方法,并在程序中调用它们。
  public int sum(int a, int b) {
      return a + b;
  }

  public static void main(String[] args) {
      MyClass myObject = new MyClass();
      int result = myObject.sum(5, 3);
  }

5. 面向对象编程(OOP)

  • 类与对象:理解类的定义和对象的创建。
  public class Car {
      // attributes
      String color;
      int maxSpeed;

      // methods
      public void display() {
          System.out.println("Car color: " + color);
          System.out.println("Max speed: " + maxSpeed);
      }
  }
  • 构造方法:如何定义和使用构造方法初始化对象。
  public class Car {
      String color;
      int maxSpeed;

      // Constructor
      public Car(String color, int maxSpeed) {
          this.color = color;
          this.maxSpeed = maxSpeed;
      }
  }

  Car myCar = new Car("Red", 180);
  • 封装:使用修饰符(privatepublicprotected)保护类的属性。
  public class Employee {
      private String name;
      private double salary;

      // Getter and Setter methods
      public String getName() {
          return name;
      }

      public void setName(String name) {
          this.name = name;
      }

      public double getSalary() {
          return salary;
      }

      public void setSalary(double salary) {
          this.salary = salary;
      }
  }
  • 继承:通过 extends 关键字实现类的继承。
  public class Animal {
      void eat() {
          System.out.println("This animal eats food.");
      }
  }

  public class Dog extends Animal {
      void bark() {
          System.out.println("The dog barks");
      }
  }

  Dog myDog = new Dog();
  myDog.eat();
  myDog.bark();
  • 多态:方法重载和方法重写。
  // Method Overloading
  public class MathUtils {
      public int add(int a, int b) {
          return a + b;
      }

      public double add(double a, double b) {
          return a + b;
      }
  }

  // Method Overriding
  public class Animal {
      void sound() {
          System.out.println("This animal makes a sound");
      }
  }

  public class Cat extends Animal {
      void sound() {
          System.out.println("The cat meows");
      }
  }

  Animal myCat = new Cat();
  myCat.sound(); // Output: The cat meows

6. 包和导入

  • :组织代码结构。
  package com.example.myapp;

  public class MyApp {
      // class code
  }
  • 导入:使用其他包的类。
  import java.util.Scanner;

  public class MyApp {
      public static void main(String[] args) {
          Scanner scanner = new Scanner(System.in);
          // code
      }
  }

7. 文件 I/O

  • 基本的文件读写:使用 FileReaderFileWriter 等进行文件操作。
  import java.io.FileWriter;
  import java.io.IOException;

  public class MyApp {
      public static void main(String[] args) {
          try {
              FileWriter myWriter = new FileWriter("filename.txt");
              myWriter.write("Hello, world!");
              myWriter.close();
          } catch (IOException e) {
              e.printStackTrace();
          }
      }
  }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1917645.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

安全防御---防火墙实验1

安全防御—防火墙实验1 一、实验拓扑与要求 要求&#xff1a; 1、DMZ区内的服务器&#xff0c;办公区仅能在办公时间内&#xff08;9&#xff1a;00-18:00)可以访问&#xff0c;生产区的设备全天可以访问 2、生产区不允许访问互联网&#xff0c;办公区和游客区允许访问互联网 …

TQSDRPI开发板教程:编译openwifi工程

本例程基于SDRPI开发板&#xff0c;在Ubuntu中使用vivado编译openwifi工程&#xff0c;最终生成BOOT.BIN文件。需要拥有安装vivado2021.1版本的ubuntu系统或虚拟机。 首先需要下载openwifi的编译文件&#xff0c;可以在GitHub中搜索openwifi-hw&#xff0c;网址如下所示&#…

Python基础教学之一:入门篇——迈入编程世界的第一步

Python基础教学之一&#xff1a;入门篇——迈入编程世界的第一步 一、Python简介&#xff1a;历史与现状 Python&#xff0c;一种解释型、高级和通用的编程语言&#xff0c;由Guido van Rossum在1989年圣诞节期间创造&#xff0c;并于1991年首次发布。设计哲学强调代码的可读性…

Centos9安装部署及静态ip配置方案

一、获取centos9的iso镜像 去官网 点击download 官网 点击x86&#xff0c;下载centos9 二、创建虚拟机 1、点击新建虚拟机 2、选择自定义 下一步 3、点击下一步 4、选择稍后安装操作系统 点击下一步 5、选择linux 选择要安装的centos 版本 这里选择centos7 6、设置虚拟…

顺序结构 ( 五 ) —— 数据输入输出 【互三互三】

文章目录 &#x1f341;序 &#x1f341;一、字符输入函数getchar &#x1f341;二、字符输出函数putchar &#x1f341;三、通过cout流输出数据 &#x1f341;四、通过cin流读入数据 &#x1f341;五、格式化输入函数scanf &#x1f341;六、格式化输出函数printf &…

最简单的vue3组件之间传值

localStorage 是 HTML5 引入的一个 Web Storage API 的一部分&#xff0c;它允许网页在用户的浏览器上存储数据。localStorage 提供了一种持久化的本地存储方案&#xff0c;数据不会因为浏览器关闭而丢失&#xff0c;除非用户或脚本显式地删除它们。 localStorage 是一种非常实…

代码架构你想过吗?

过去的一段时间&#xff0c;我常发现我接手的服务、自己从0开始搭建起来的服务&#xff0c;整个服务代码的架构都比较混乱&#xff0c;很难去维护迭代。常见的有两种 平铺在根目录的。层次不清晰的&#xff0c;逻辑分别散落在各个层次中 我经过一段时间的分析&#xff0c;我总…

实现分布式锁的常用三种方式

分布式锁概述 我们的系统都是分布式部署的&#xff0c;日常开发中&#xff0c;秒杀下单、抢购商品等等业务场景&#xff0c;为了防⽌库存超卖&#xff0c;都需要用到分布式锁。 分布式锁其实就是&#xff0c;控制分布式系统不同进程共同访问共享资源的一种锁的实现。如果不同的…

【VUE实战项目】使用typescript重构项目

前言 本文是博主vue实战系列中的一篇&#xff0c;本系列不是专业的前端教程&#xff0c;是专门针对后端熟悉前端的。前面我们用vue实现了一个基础的管理系统&#xff0c;前文专栏地址&#xff1a; https://blog.csdn.net/joker_zjn/category_12469788.html?spm1001.2014.300…

java线程锁synchronized的几种情况

一、对象方法锁 1、成员方法加锁 同一个对象成员方法有3个synchronized修饰的方法&#xff0c;通过睡眠模拟业务操作 public class CaseOne {public synchronized void m1(){try { TimeUnit.SECONDS.sleep(3); } catch (InterruptedException e) { e.printStackTrace()…

七款好用的公司电脑监控软件推荐|2024年电脑监控软件干货整理!

在现代企业管理中&#xff0c;电脑监控软件成为提高员工生产力、确保数据安全和防止信息泄露的重要工具。以下是七款适合公司使用的电脑监控软件推荐 固信软件https://www.gooxion.com/ 1. 固信软件 功能特点&#xff1a; 实时屏幕监控和行为分析。 网站访问历史记录和详细…

pytorch-RNN存在的问题

这里写目录标题 1. RNN存在哪些问题呢&#xff1f;1.1 梯度弥散和梯度爆炸1.2 RNN为什么会出现梯度弥散和梯度爆炸呢&#xff1f; 2. 解决梯度爆炸方法3. Gradient Clipping的实现4. 解决梯度弥散的方法 1. RNN存在哪些问题呢&#xff1f; 1.1 梯度弥散和梯度爆炸 梯度弥散是…

C++超市外卖小程序-计算机毕业设计源码62482

摘要 随着社会生活节奏加快和消费习惯的变化&#xff0c;外卖服务成为人们日常生活中不可或缺的一部分。超市外卖作为新兴业态备受关注&#xff0c;然而传统外卖平台在推荐精准度和用户体验方面存在挑战。 本研究旨在基于协同过滤算法&#xff0c;结合C语言和MySQL数据库&#…

信息化安全管理怎么做

企业如何做好安全管理工作?检查频次多了怕影响子正常生产经营&#xff0c;效益低下&#xff0c;检查频次少了又担心管控不住。”这是安全管理部综合业务室的困惑&#xff0c;也是很多企业的困惑。面对企业在安全管理中的困惑与挑战&#xff0c;采用信息化平台与精细化管理策略…

Java研学-Shiro安全框架(四)

六 SpringBoot集成Shiro认证 1 分析 Shiro提供认证授权功能&#xff0c;所以SpringBoot中不需再编写自定义注解&#xff0c;权限拦截&#xff0c;登录拦截&#xff0c;登录登出。Shiro 环境中有三个封装对象Subject &#xff0c;SecurityManager和Realms&#xff0c;SpringBoo…

hcip暑假第二次作业

ip配置如下 配置缺省路由 [R1]ip route-static 0.0.0.0 0 12.0.0.2 -------设置缺省路由 [R1]ip route-static 0.0.0.0 0 21.0.0.2 [R2]ip route-static 0.0.0.0 0 22.0.0.2 [R3]ip route-static 0.0.0.0 0 23.0.0.2 [R4]ip route-static 0.0.0.0 0 24.0.0.2 [R5]ip route…

python如何计算两个时间相差多少秒钟,分钟,小时,天,月,年

使用场景&#xff1a;在做上课记录系统的时候&#xff0c;有上课开始时间和上课结束时间&#xff0c;需要计算这两个时间的插值&#xff0c;以分钟为单位。 封装方法如下&#xff1a; from datetime import datetimedef sub_seconds(date1: str "2024-07-11 12:33:33&q…

编程范式之事件驱动编程

目录 前言1. 定义2. 特点2.1 异步性2.2 解耦2.3 可扩展性2.4 高度响应 3. 适用场景3.1 用户界面开发3.2 网络编程3.3 游戏开发3.4 物联网&#xff08;IoT&#xff09; 4. 优点4.1 提高效率4.2 灵活性和可扩展性4.3 解耦和模块化4.4 高响应性 5. 缺点5.1 复杂性增加5.2 调试困难…

Spring中如何操作Redis

Spring毕竟是Java中的一个主流框架&#xff0c;如何在这个框架中使用Redis呢&#xff1f; 创建项目并引入相关依赖 然后进行创建。 至此就将Redis的相关依赖引入进来了。 编写Redis配置 将application.properties修改成application.yml 然后编写如下配置&#xff1a; spr…