Irene181 Irene181
3年前
一篇文章带你搞懂Python中的类
前言今天我们要说的是面向对象的核心类,类能帮我们把复杂的事情变得有条理,有顺序,希望大家通过学习类能改善自己的编码风格,使代码变得更为好看,更加通俗易懂。1.类的用法一、什么是类类(class),作为代码的父亲,可以说它包裹了很多有趣的函数和方法以及变量,下面我们试着简单创建一个吧。这样就算创建了我们的第一个类了。大家可以看到这里面有一个self,其实
Stella981 Stella981
3年前
Sass用法指南
学过CSS的人都知道,它不是一种编程语言。你可以用它开发网页样式,但是没法用它编程。也就是说,CSS基本上是设计师的工具,不是程序员的工具。在程序员眼里,CSS是一件很麻烦的东西。它没有变量,也没有条件语句,只是一行行单纯的描述,写起来相当费事。很自然地,有人就开始为CSS加入编程元素,这被叫做"CSS预处理器"(csspreproces
Wesley13 Wesley13
3年前
C# 篇基础知识7——字符串
文字是信息的主要表达方式,因此文字处理是计算机的一项重要功能之一。现在来深入研究C中字符串的各种特性、正则表达式的基本概念以及如何用正则表达式进行文本匹配。1.char结构C中的字符用System命名空间中的Char结构实现,每个Char占用2字节空间,用于存储字符的Unicode编码。C专门设计了char关键字用来声明字符变量,cha
Wesley13 Wesley13
3年前
DLL 函数中使用结构体指针作函数参数(C# 调用 C++ 的 DLL)
存在的问题:问题1:C与C同样定义的结构体在内存布局上有时并不一致;问题2:C中引入了垃圾自动回收机制,其垃圾回收器可能会重新定位指针所指向的结构体变量。解决方案:问题1方案:强制指定C、C结构体的内存布局,使其一致(两者都固定为:结构体的成员按其声明时出现的顺序依次布局,结构体成员的内存对齐为1字节对齐);为题
Wesley13 Wesley13
3年前
Java中的数组(Array)
数组对于每一门编程语言来讲都是最重要的数据结构之一,当然不同的编程语言对数组的实现以及处理也不尽相同。数组的概念:把有限个相同类型元素变量放在一个整体,这个整体就叫做数组。数组中的每一个元素被称为数组元素,通常可以通过数组元素的索引(也叫下标,可以理解为一种编号,从0开始)来访问数组元素,包括数组元素的赋值(set)和取值(get)。
Wesley13 Wesley13
3年前
PHP中HASH函数的优化技巧
Hash数据结构是一种非常常见的数据结构,作为一个程序员,你可能每天都在和它接触,尽管很多时候你可能没有意识到。Hash在PHP内核中扮演了非常重要的角色,数组、变量作用域、函数参数列表等均是基于Hash实现。所以,在PHP里你能看到各种对于Hash的优化。Hash数据结构Hash数据结构,本质上为了解决计算机中真正意义的数组只能使用数字作
Stella981 Stella981
3年前
JVM技术总结
1.程序计数器:记录正在执行的虚拟机的字节码的指令地址。2.java虚拟机栈:每个Java方法在执行的同时会创建一个栈帧用于存储局部变量表、操作数栈、动态链接、方法出口等信息。每一个方法从调用直至执行完成的过程,就对应着一个栈帧在Java虚拟机栈中入栈和出栈的过程。该区域可能抛出以下异常:1.当线程请求的栈深度超过最大值,会抛出
Wesley13 Wesley13
3年前
Java 中 final 内存语义
对于final域,编译器和处理器要遵守两个重排序规则。1)在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用变量,这两个操作之间不能重排序。2)初次读一个包含final域的对象的引用,与随后初次读这个final域,这两个操作之间不能重排序。下面通过一些示例性的代码来分别说明这两个规则。 !(ht
Stella981 Stella981
3年前
Scala_标识符
用于对象,类,变量和方法的名称称为标识符。关键字不能用作标识符,标识符区分大小写。类名首字母大写方法名称第一个字母小写程序文件名应该与对象名称完全匹配1.字母数字标识符以字母或下划线开头,后跟字母、数字或下划线。$字符是Scala中的保留关键字,不应在标识符中使用2.运算符标识符由一个或
Easter79 Easter79
3年前
ThreadLocal可以解决并发问题吗
前言到底什么是线程的不安全?为什么会存在线程的不安全?线程的不安全其实就是多个线程并发的去操作同一共享变量没用做同步所产生意料之外的结果。那是如何体现出来的呢?我们看下面的一个非常经典的例子:两个操作员同时操作同一个银行账户,A操作员存钱,100B操作员取钱50。我们看一下流程。!(https://oscimg.oschina.net/os