คำถามติดแท็ก instance-variables

8
servlets ทำงานอย่างไร การเริ่มต้นเซสชันตัวแปรที่แชร์และมัลติเธรด
สมมติว่าฉันมีเว็บเซิร์ฟเวอร์ที่เก็บ servlets ไว้มากมาย สำหรับการส่งข้อมูลระหว่าง servlets เหล่านั้นฉันกำลังตั้งค่าเซสชันและตัวแปรอินสแตนซ์ ตอนนี้ถ้าผู้ใช้ 2 คนหรือมากกว่าส่งคำขอไปยังเซิร์ฟเวอร์นี้จะเกิดอะไรขึ้นกับตัวแปรเซสชัน พวกเขาจะเป็นเรื่องธรรมดาสำหรับผู้ใช้ทุกคนหรือพวกเขาจะแตกต่างกันสำหรับผู้ใช้แต่ละคน? หากพวกเขาแตกต่างกันเซิร์ฟเวอร์จะสามารถแยกความแตกต่างระหว่างผู้ใช้ที่แตกต่างกันอย่างไร คำถามที่คล้ายกันอีกข้อหนึ่งหากมีnผู้ใช้ที่เข้าถึงเซิร์ฟเล็ตเฉพาะเจาะจงเซิร์ฟเล็ตนี้จะถูกสร้างอินสแตนซ์เฉพาะในครั้งแรกที่ผู้ใช้คนแรกเข้าถึงหรือได้รับอินสแตนซ์สำหรับผู้ใช้ทั้งหมดแยกกันหรือไม่ กล่าวอีกนัยหนึ่งจะเกิดอะไรขึ้นกับตัวแปรอินสแตนซ์

6
ตัวแปรอินสแตนซ์: self vs @
นี่คือรหัสบางส่วน: class Person def initialize(age) @age = age end def age @age end def age_difference_with(other_person) (self.age - other_person.age).abs end protected :age end สิ่งที่ฉันต้องการที่จะทราบความแตกต่างระหว่างการใช้@ageและself.ageในage_difference_withวิธีการ

7
ตัวแปรอินสแตนซ์คลาส Ruby เทียบกับตัวแปรคลาส
ฉันอ่าน " ตั้งค่าตัวแปรอินสแตนซ์ของ Ruby เมื่อใด " แต่ฉันเป็นคนสองคนที่จะใช้ตัวแปรอินสแตนซ์คลาส ตัวแปรคลาสถูกแบ่งใช้โดยอ็อบเจ็กต์ทั้งหมดของคลาสตัวแปร Instance เป็นของหนึ่งอ็อบเจ็กต์ มีพื้นที่เหลือไม่มากที่จะใช้ตัวแปรอินสแตนซ์ของคลาสถ้าเรามีตัวแปรคลาส ใครสามารถอธิบายความแตกต่างระหว่างสองสิ่งนี้กับเวลาที่ใช้ นี่คือตัวอย่างรหัส: class S @@k = 23 @s = 15 def self.s @s end def self.k @@k end end p S.s #15 p S.k #23 ฉันเข้าใจแล้วในตอนนี้ตัวแปรของอินสแตนซ์ของคลาสไม่ได้ถูกส่งผ่านห่วงโซ่การสืบทอด!

5
ตัวแปร @@ หมายถึงอะไรในรูบี
ตัวแปร Ruby นำหน้าด้วย double at signs ( @@) คืออะไร ความเข้าใจของฉันเกี่ยวกับตัวแปรที่นำหน้าด้วยเครื่องหมาย at คือมันเป็นตัวแปรอินสแตนซ์เช่นนี้ใน PHP: รุ่น PHP class Person { public $name; public function setName($name) { $this->name = $name; } public function getName() { return $this->name; } } เทียบเท่าทับทิม class Person def set_name(name) @name = name end def get_name() @name end end …

17
Ruby แปลง Object เป็น Hash
สมมติว่าผมมีGiftวัตถุที่มีและ@name = "book" @price = 15.95วิธีที่ดีที่สุดในการแปลงเป็น Hash {name: "book", price: 15.95}ใน Ruby ไม่ใช่ Rails (แต่อย่าลังเลที่จะตอบ Rails ด้วย)

10
จะรับตัวแปรอินสแตนซ์ใน Python ได้อย่างไร
มีวิธีการในตัวใน Python เพื่อรับอาร์เรย์ของตัวแปรอินสแตนซ์คลาสทั้งหมดหรือไม่ ตัวอย่างเช่นหากฉันมีรหัสนี้: class hi: def __init__(self): self.ii = "foo" self.kk = "bar" มีวิธีให้ฉันทำไหม: >>> mystery_method(hi) ["ii", "kk"] แก้ไข: เดิมทีฉันขอตัวแปรคลาสผิดพลาด

6
คุณสมบัติที่ประกาศต้องการตัวแปรอินสแตนซ์ที่เกี่ยวข้องหรือไม่
คุณสมบัติใน Objective-C 2.0 จำเป็นต้องมีการประกาศตัวแปรอินสแตนซ์ที่เกี่ยวข้องหรือไม่ ตัวอย่างเช่นฉันเคยทำสิ่งนี้: MyObject.h @interface MyObject : NSObject { NSString *name; } @property (nonatomic, retain) NSString *name; @end MyObject.m @implementation @synthesize name; @end อย่างไรก็ตามถ้าฉันทำสิ่งนี้แทน: MyObject.h @interface MyObject : NSObject { } @property (nonatomic, retain) NSString *name; @end ตอนนี้ยังใช้ได้ไหม และมันแตกต่างจากตัวอย่างก่อนหน้านี้หรือไม่?

4
Ruby Metaprogramming: ชื่อตัวแปรอินสแตนซ์แบบไดนามิก
สมมติว่าฉันมีแฮชต่อไปนี้: { :foo => 'bar', :baz => 'qux' } ฉันจะตั้งค่าคีย์และค่าแบบไดนามิกให้กลายเป็นตัวแปรอินสแตนซ์ในออบเจ็กต์ได้อย่างไร ... class Example def initialize( hash ) ... magic happens here... end end ... ดังนั้นฉันจึงจบลงด้วยสิ่งต่อไปนี้ในโมเดล ... @foo = 'bar' @baz = 'qux' เหรอ?

11
สมาชิกส่วนตัวใน CoffeeScript?
มีใครรู้วิธีสร้างสมาชิกส่วนตัวแบบไม่คงที่ใน CoffeeScript บ้างไหม ตอนนี้ฉันกำลังทำสิ่งนี้ซึ่งเพิ่งใช้ตัวแปรสาธารณะที่ขึ้นต้นด้วยขีดล่างเพื่อชี้แจงว่าไม่ควรใช้นอกคลาส: class Thing extends EventEmitter constructor: (@_name) -> getName: -> @_name การใส่ตัวแปรในคลาสทำให้เป็นสมาชิกแบบคงที่ แต่ฉันจะทำให้ตัวแปรไม่คงที่ได้อย่างไร เป็นไปได้หรือไม่โดยไม่ต้อง "แฟนซี"?

3
การพึ่งพาการกำหนดค่าเริ่มต้นของฟิลด์เริ่มต้น - เป็นรูปแบบการเขียนโปรแกรมที่ไม่ดีใช่หรือไม่ [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน7 เดือนที่ผ่านมา ฉันได้รับลิงก์ไปยังเอกสารของ oracle อย่างเป็นทางการ: https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html มันบอกว่าที่ไหน: ค่าเริ่มต้น ไม่จำเป็นเสมอในการกำหนดค่าเมื่อมีการประกาศฟิลด์ ฟิลด์ที่ประกาศ แต่ไม่เริ่มต้นจะถูกตั้งค่าเริ่มต้นที่เหมาะสมโดยคอมไพเลอร์ โดยทั่วไปแล้วค่าเริ่มต้นนี้จะเป็นศูนย์หรือเป็นโมฆะทั้งนี้ขึ้นอยู่กับประเภทข้อมูล อย่างไรก็ตามการใช้ค่าเริ่มต้นนั้นถือว่าเป็นลักษณะการเขียนโปรแกรมที่ไม่ดี ฉันต้องการเน้นส่วนนี้: อย่างไรก็ตามการใช้ค่าเริ่มต้นนั้นถือว่าเป็นลักษณะการเขียนโปรแกรมที่ไม่ดี แต่นี่คือสิ่งที่ฉันจะบอกว่าเป็นส่วนพื้นฐานของข้อกำหนดภาษาที่รู้ว่าตัวแปรอินสแตนซ์มีค่าเริ่มต้น ทำไมในโลกนี้เป็นแบบฝึกหัดการเขียนโปรแกรมที่ไม่ถูกต้องถ้ามันถูกใช้อย่างกว้างขวางแม้ในซอร์สโค้ด Java SE ไลบรารี?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.