Playlist · Adel Nasim

Learn JAVA Programming From Scratch In Arabic

by Adel Nasim · 77 videos

Listed in Best free programming courses in Arabic on YouTube, ranked by total hours

Total watch time

1d 1h 11m

at 1× speed · exactly 1 day, 1 hour, 11 minutes, 26 seconds at 1×

At an hour a day you'd finish in 26 days

The shape of the course

77 videos in blocks of 10 · each column is a block's total, to scale

2h 32m
2h 38m
3h 23m
3h 15m
3h 56m
3h 21m
3h 55m
2h 12m

WatchedTo watch

Compare Open on YouTube JSON

Next time, skip the copying: change youtube.com to playlistduration.com in any playlist, video or channel address and it opens here. Or see the total on YouTube itself, with our extension for Chrome, Firefox or Edge.

Your plan

Plan to finish

About 26 days at an hour a day

Pick a daily pace and the days you'll watch. Ticked videos are skipped.

Days

At one hour a day, every day, this playlist takes about 26 days. Turn on JavaScript to plan around your week.

Videos (77)

1d 1h 11m in total · tick what you've watched

Tick videos you've watched — progress is saved in this browser. Titles open on YouTube in a new tab.

Videos to
Watched
1 #00 [JAVA] - Introduction 12:18 2020-10-20
2 #01 [JAVA] - Installing the Java Development Tools (JDK, Apache NetBeans IDE) 14:20 2020-10-20
3 #02 [JAVA] - Escape Sequences and Comments 13:01 2020-10-20
4 #03 [JAVA] - Data Types 20:48 2020-10-20
5 #04 [JAVA] - Arithmetic Operators 12:11 2020-10-20
6 #05 [JAVA] - Arithmetic Operators (Prefix & Postfix) 11:15 2020-10-20
7 #06 [JAVA] - Java User Input (Scanner), Printf methods 18:33 2020-10-20
8 #07 [JAVA] - Selection Statement ( if - if else - if else if ) 16:55 2020-10-20
9 #08 [JAVA] - Selection Statement ( Exercises, Practice, Ternary Operator ), Instanceof Method 13:41 2020-10-20
10 #09 [JAVA] - Selection Statement (Switch Statements) 18:56 2020-10-20
11 #010 [JAVA] - Repetition Control Statement (While Loop) 15:50 2020-10-20
12 #011 [JAVA] - Sentinel and Flag-Controlled While Loops 10:09 2020-10-20
13 #012 [JAVA] - Repetition Control Statement (Do-While Loop) 10:29 2020-10-20
14 #013 [JAVA] - Repetition Control Statement (For Loop) 13:07 2020-10-20
15 #014 [JAVA] - Questions and Exercises in Loops 17:12 2020-10-20
16 #015 [JAVA] - Branching Statements ( Break/Continue ) 12:38 2020-10-20
17 #016 [JAVA] - Repetition Control Statement (Nested Loops) 19:26 2020-10-20
18 #017 [JAVA] - Branching Statements (Labeled Break / Labeled Continue) 11:17 2020-10-20
19 #018 [JAVA] - Method / Function Part 1 23:26 2020-10-20
20 #019 [JAVA] - Method / Function Part 2 (Examples) 23:58 2020-10-20
21 #020 [JAVA] - Built in Method / Function 20:18 2020-10-20
22 #021 [JAVA] - Overloading Method / Function 15:06 2020-10-20
23 #022 [JAVA] - Recursion/Recursive Methods Part 1 24:48 2020-10-20
24 #023 [JAVA] - Recursion/Recursive Methods Part 2 22:34 2020-10-20
25 #024 [JAVA] - One Dimensional Arrays (1D Array) 23:21 2020-10-20
26 #025 [JAVA] - One Dimensional Array (Exercises, Practice) 11:45 2020-10-20
27 #026 [JAVA] - One Dimensional Array (Char Array) 12:22 2020-10-20
28 #027 [JAVA] - Passing Arrays to Methods 16:00 2020-10-20
29 #028 [JAVA] - Multidimensional Arrays & Passing Multidimensional Arrays to Methods 27:50 2020-10-21
30 #029 [JAVA] - String & Array String 28:50 2020-10-21
31 #030 [JAVA] - Introduction to Object-Oriented Programming 17:46 2020-12-21
32 #031 [JAVA] - Classes and Objects 26:49 2021-01-03
33 #032 [JAVA] - Questions and Exercises - Classes and Objects 25:41 2021-02-15
34 #033 [JAVA] - Constructor (No-Arg, Parameterized, Default) 23:37 2021-02-25
35 #034 [JAVA] - Constructor (Copy Constructor) / Finalizers vs Destructor 11:14 2021-02-25
36 #035 [JAVA] - Static keyword (Static Variable and Methods) 23:07 2021-03-22
37 #036 [JAVA] - Static keyword (Static Block - Static Class) 17:27 2021-03-22
38 #037 [JAVA] - Passing Objects to Methods (by Value vs by Reference / Passing Objects as Arguments) 10:02 2021-04-02
39 #038 [JAVA] - Passing Objects to Methods (Returning Objects / Comparing Objects) 21:29 2021-04-02
40 #039 [JAVA] - Inheritance (Types of Inheritance / Access Modifiers and inheritance) 17:32 2021-04-19
41 #040 [JAVA] - Inheritance (Super Keyword / Object Class / Package-Private vs Protected) 33:29 2021-04-23
42 #041 [JAVA] - Polymorphism (Method Overloading and Method Overriding) 15:55 2021-05-08
43 #042 [JAVA] - Polymorphism(Explanation of Examples, Static Methods) 27:53 2021-05-09
44 #043 [JAVA] - Polymorphism(Late binding "Dynamic Polymorphism", Early binding "Static Polymorphism") 13:37 2021-05-10
45 #044 [JAVA] - Types of Relationships (Association, Aggregation "has-a", Composition "part-of") 22:33 2021-05-28
46 #045 [JAVA] - Types of Relationships (Association, Aggregation, Composition) With Example 34:20 2021-06-01
47 #046 [JAVA] - Final Keyword (Final Variable, Final Blank Variable, Static Final Blank Variable) 17:52 2021-06-08
48 #047 [JAVA] - Final Keyword (Final Parameters, Final Methods, Final Classes, Final References) 13:53 2021-06-08
49 #048 [JAVA] - ArrayList Class 27:22 2021-06-26
50 #049 [JAVA] - ArrayList, Declaration, Print, Methods(Add, Get, AddAll, Copy Constructor, Clone) 29:22 2021-06-30
51 #050 [JAVA] - ArrayList Methods(Set, Remove, Remove All, Remove Range) Polymorphic ArrayList 22:04 2021-06-30
52 #051 [JAVA] - ArrayList Methods(contains, retainAll, subList, clear, ensureCapacity, sort, min, max) 30:53 2021-07-04
53 #052 [JAVA] - Abstraction (Real-Life Examples, Introduction to Abstract Class, UML Abstract Class) 19:05 2021-08-07
54 #053 [JAVA] - Abstract Class part 1 (Examples, Abstract rules) 19:32 2021-08-10
55 #054 [JAVA] - Abstract Class part 2 (Polymorphism, Benefits of Abstract Class) 14:31 2021-08-10
56 #055 [JAVA] - Interface Part1 (Real-Life Example, UML, Convention) 20:09 2021-08-15
57 #056 [JAVA] - Interface Part2(Practical, Implement Multiple Interfaces, Extends Multiple Interfaces) 21:44 2021-08-21
58 #057 [JAVA] - Interface Part3 (Default - Private - Static Methods, Nested Interface) 17:33 2021-08-22
59 #058 [JAVA] - Interface Part4(Marker or Tagging Interface, Generic Interface, Benefits of Interface) 12:45 2021-08-22
60 #059 [JAVA] - Anonymous Inner Class (Extends Class, Implements Interface, Defined Arguments, Lambda) 23:03 2021-10-07
61 #060 [JAVA] - Anonymous Inner Class (Constructor, Extra Methods, Local Variables , Var Keyword) 26:57 2021-10-10
62 #061 [JAVA] - Java Enum (What is Enum, Examples, UML, Enum with switch, Attributes & Methods) 30:22 2021-12-15
63 #062 [JAVA] - Java Enum ( Real life example, ordinal, compreTo, toString, name, valueOf, values ) 18:40 2021-12-17
64 #063 [JAVA] - Java Enum ( EnumSet & EnumMap classes, Benefits of Enums, Enums vs Classes ) 13:49 2021-12-17
65 #064 [JAVA] - Exception Handling (Try-catch block, Multi-catch blocks, Union-catch blocks ) 23:07 2021-12-30
66 #065 [JAVA] - Exception Handling ( Finally Block, Throws Keyword, Checked vs Unchecked Exception ) 29:24 2022-01-02
67 #066 [JAVA] - Exception Handling (Throw keyword, Throw vs Throws, Throw & finally, Custom exception) 32:07 2022-01-04
68 #067 [JAVA] - File Handling(java.io, Byte & Character stream, InputStream & OutputStream subclasses) 23:59 2022-05-06
69 #068 [JAVA] - File Handling ( FileInputStream class, Character size vs String size ) 24:35 2022-05-14
70 #069 [JAVA] - File Handling (FileOutputStream class, Reading and Writing images, Arabic letters) 11:42 2022-05-14
71 #070 [JAVA] - File Handling (File class) 15:57 2022-05-21
72 #071 [JAVA] - File Handling (File class, Directories "Add/Remove", Constructors) 14:40 2022-05-21
73 #072 [JAVA] - File Handling (Reader class/Writer class hierarchy, FileWriter & FileReader) 22:44 2022-05-27
74 #073 [JAVA] - File Handling (BufferedReader / BufferedWriter classes, Read file line by line) 21:50 2022-06-03
75 #074 [JAVA] - File Handling (PrintWriter class "Constructors & Methods") 14:56 2022-06-17
76 #075 [JAVA] - File Handling (Scanner class "Constructors & Methods", useDelimiter, delimiter) 19:45 2022-06-18
77 #076 [JAVA] - File Handling (Serialization and Deserialization ,Read & Write multiple objects) 22:09 2022-06-26
For your README

Embed a badge

Show the watch time in a README or course description — it links back here and updates itself

Watch time: 1d 1h 11m · 77 videos

Markdown
[![Watch time: 1d 1h 11m · 77 videos](https://playlistduration.com/badge/playlist/PLCInYL3l2AajYlZGzU_LVrHdoouf8W6ZN.svg)](https://playlistduration.com/playlist/PLCInYL3l2AajYlZGzU_LVrHdoouf8W6ZN)
HTML
<a href="https://playlistduration.com/playlist/PLCInYL3l2AajYlZGzU_LVrHdoouf8W6ZN"><img src="https://playlistduration.com/badge/playlist/PLCInYL3l2AajYlZGzU_LVrHdoouf8W6ZN.svg" alt="Watch time: 1d 1h 11m · 77 videos" width="221" height="20"></a>

Add ?speed=1.5 to the image URL for the time at that speed, ?label=Course to change the left text, or ?style=flat-square for square corners.

Want the numbers themselves? GET https://playlistduration.com/api/v1/playlist/PLCInYL3l2AajYlZGzU_LVrHdoouf8W6ZN returns them as JSON — free, no key. API docs →

Data from the YouTube Data API as of 2026-10-23 (cached). Private or deleted videos are excluded from totals.