Think in Java 读书笔记-第一章<对象导论>

第一章 对象导论

1.1 抽象过程

这一小节主要讲述了,面向过程与面向对象。涉及了两个很重要的概念:问题空间和解空间。

面向过程编程,就是建立解空间与问题空间的映射,就是如何在计算机里实现每一步的要求。

面向对象编程,是面向过程的抽象,他只是一种思想,解决问题时,想象的是更加抽象的对象,而不是,一步一步实现。就个人观点,它们的本质是一样的,只不过抽象的层次高度不同罢了。

一些特性:

1.万物皆对象。

2.程序是对象的集合,它通过发送消息告知彼此所要做的。

3.每个对象都有自己的由其他对象所构成的存储。

4.每个对象都拥有其类型

5.某一特定类型的所有对象都可以接受同样的消息

简言之:对象具有状态,行为和标识。


1.2 每个对象都有一个接口

对标题的理解,每个对象都隶属于一个类<特殊的类型>。


1.3 每个对象都提供服务

如题,在oop里,把对象看成服务的提供者,我们需要什么样的服务,需要创建或复用什么样的对象。


1.4 被隐藏的具体实现

1.类的创建者。

程序开发人员:

2.类的使用者。

本节介绍了访问控制权限,以及设置访问控制权限的原因。


1.5 复用具体实现

即使用现有的类创建新的类,包括创建成员对象(组合),作为参数传递(聚合)。


1.6 继承

extends

1.6.1 ‘是一个’与‘像是一个’

1.只重写父类的方法。(是一个)

extends 各有优势。

2.添加新的方法。(像是一个)


1.7 伴随多态的可互换对象

多态,面向抽象/接口编程,而不关心具体的实现。


1.8 单根继承结构

单继承。


1.9 容器

容器。

1.9.1 参数化类型

泛型。


1.10 对象的创建和生命期

多态内存分配和垃圾回收机制。


1.11 异常处理:处理错误

异常处理,提供了一种从错误状况进行可靠恢复的途径。


1.12 并发编程

多线程。


1.13 Java与Internet

J2EE


本章主要对OOP和JAVA做了基本的介绍,而最经典的应该就是章节最后的总结了,简单明了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
请帮我修改实现视频上传服务器这是前端代码:<!DOCTYPE html> <!-- Coding By CodingNepal - youtube.com/codingnepal --> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>File Upload with Progress Bar | CodingNepal</title> <link rel="stylesheet" href="annotation/File Upload in JavaScript/style.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css"/> </head> <body> <div class="wrapper"> <header>File Uploader JavaScript</header> <form action="#"> <input class="file-input" type="file" name="file" hidden> <i class="fas fa-cloud-upload-alt"></i> <p>Browse File to Upload</p> </form> <section class="progress-area"></section> <section class="uploaded-area"></section> </div> <script src="annotation/File Upload in JavaScript/script.js"></script> </body> </html>,这是后端代码:<?php namespace app\index\controller; use think\Controller; use think\migration\db\Table; use Util\data\Sysdb; use app\index\controller\BaseAdmin; use think\Db; use think\Filesystem; // 在控制器文件的顶部添加这一句 use think\Request; class Test extends Controller { public function index(){ return $this->fetch(); } public function myMethod() { // 执行操作 // ... // 返回 AJAX 响应 $response = ['status' => 'success', 'message' => '操作成功']; return json($response); } public function upload() { return $this->fetch('test/upload'); } public function save(Request $request) { // 获取上传的文件 $file = $request->file('video'); // 将文件保存到服务器上 $saveName = Filesystem::disk('public')->putFile('videos', $file); // 将视频信息存储到数据库中 $data = [ 'filename' => $file->getOriginalName(), 'path' => $saveName, 'type' => 'video/' . $file->guessExtension(), 'size' => $file->getSize(), 'created_at' => date('Y-m-d H:i:s', time()) ]; Db::name('videos')->insert($data); // 返回上传结果 return json([ 'status' => 'success', 'filename' => $file->getOriginalName(), 'path' => $saveName ]); } }
05-15

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值