-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathoop.rb
108 lines (72 loc) · 1.48 KB
/
oop.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# require 'pry'
# class Recipe
# def recipe_name(name)
# puts name
# binding.pry
# end
# end
# r1 = Recipe.new
# class Books
# def book_details(name, author, price)
# puts "Name: #{name} Author: #{author} Price: #{price}"
# binding.pry
# end
# end
# book = Books.new
# binding.pry
# class Dog
# def bark
# puts "Woof!"
# end
# end
# fido = Dog.new
# class Dog
# def name=(dog_name)
# thi s_dogs_name = dog_name
# end
# def name
# this_dogs_name
# end
# end
# lassie = Dog.new
# lassie.name = "Lassie"
# lassie.name
# require 'pry'
# class Recipe
# # using attribute reader replaces cluttering of methods all over
# attr_reader :name
# def initialize(name)
# @name = name
# # binding.pry
# end
# # binding.pry
# # def name
# # @name
# # end
# end
# r1 = Recipe.new("Pilau")
# binding.pry
=begin
attr_reader => used to only read attributes
attr_accessor => used to read & write/change attributes
attr_writer => used to write attributes
=end
#initialize all together
# require 'pry'
# class Dog
# attr_accessor :name, :price
# def initialize(name, price)
# @name = name
# @price = price
# binding.pry
# end
# # def name
# # @name
# # # puts "Wolf!"
# # end
# # def price
# # @price
# # end
# end
# doggy = Dog.new("Wolf", 30)
# binding.pry